Image processing apparatus, control method of image processing apparatus, and storage medium

ABSTRACT

This invention has as its object to provide an image processing environment which allows the user to stop only a specific job by simple operation, and has high operation efficiency and operability.  
     When the user instructs to stop a job by a-stop key on a console ( 3000 ) during job execution, a job manager (Job Manager) implemented by a CPU ( 2001 ) pauses all jobs which are being executed, displays a list of all the paused jobs on the console ( 3000 ) using their job IDs, prompts the user to select any of the jobs displayed in the list, and stops only the selected job.

FIELD OF THE INVENTION

[0001] The present invention relates to an image processing apparatuswhich can receive a plurality of jobs and can parallelly execute them, acontrol method of the image processing apparatus, and a storage medium.

BACKGROUND OF THE INVENTION

[0002] A conventional image processing apparatus such as a copyingmachine or the like comprises control means which stops or aborts theoperation of the apparatus in response to a user's instruction before acopying operation that has started comes to an end.

[0003] With this means, even when the image processing apparatus makesoperation that the user did not intend due to setting errors of acopying mode or the like, the user can stop the apparatus.

[0004] In recent years, various image processing apparatuses have notonly a single function, but have a plurality of functions such as ascanner, printer, copying machine, FAX, and the like, and cansimultaneously execute the respective functions.

[0005] Furthermore, such apparatus not only can simultaneously executedifferent functions, but can accept a plurality of print operationinstructions (jobs), and can sequentially execute the received operationinstructions (jobs).

[0006] However, in such image processing apparatus that can parallellyexecute a plurality of jobs, even when the user wants to stop only aspecific job he or she input to the apparatus, since the conventionalapparatus comprises only a stop instruction means for the entireapparatus, all jobs of the apparatus are stopped together with the jobthe user wants to stop. This results in poor use efficiency of theapparatus and poor operability for the user.

[0007] Even when the user can select a job to be stopped from all jobs,the process of the job to be stopped progresses while the user isselecting the job to be stopped, and unwanted printouts are formed.

[0008] Furthermore, in an arrangement that makes the user select a jobto be stopped every time a job is to be stopped, even when execution ofonly one job is in progress, the user must select that job, resulting incumbersome operations.

SUMMARY OF THE INVENTION

[0009] The present invention has been made to solve the aforementionedproblems, and has as its object to provide an image input/outputapparatus and its control method, which can facilitate operation fordeleting a job which is being executed or queued in a job list, and havehigh operability. Especially, it is the first object of the presentinvention to provide an image processing apparatus and its controlmethod, and a storage medium, which display a list of all jobs which arebeing executed using identification information uniquely assigned tojobs when a job stop instruction is issued during execution of jobs,make the user select one of the jobs displayed in the list, and controlto stop only the selected job, thus stopping only a specific job thatthe user wants to stop.

[0010] It is the second object of the present invention to provide animage processing apparatus and its control method, which can flexiblychange a stop instruction function in correspondence with user'sconvenience by displaying a list of jobs or stopping jobs of a specifictype in accordance with a designated mode even when a stop instructionis issued during execution of jobs, and can improve operability.

[0011] It is the third object of the present invention to provide animage processing apparatus and its control method, and a storage medium,which pause all jobs which are being executed when a job stopinstruction is issued during execution of jobs, display a list of allstopped jobs using identification information uniquely assigned to thejobs, make the user select one of the jobs displayed in the list, stoponly the selected job, and restart the non-selected jobs, thus stoppinga specific job that the user wants to stop at the earliest possibletiming, and preventing an unwanted process from being continuouslyexecuted during the user's stop instruction.

[0012] It is the fourth object of the present invention to provide animage processing apparatus and its control method, and a storage medium,which check if one or a plurality of jobs are being executed, when a jobstop instruction is issued during execution of a job or jobs, stop thejob when it is determined that only one job is being executed, display alist of all jobs which are being executed using identificationinformation uniquely assigned to the jobs when it is determined that aplurality of jobs are being executed, make the user select one of thejobs displayed in the list, and stop only the selected job, thusstopping a specific job that the user wants to stop (especially, whenonly one job is being executed, that job can be immediately stoppedwithout forcing the user to make cumbersome operation, i.e., to selectthat job), and improving the operability.

[0013] In order to achieve the above objects, the first aspect of thepresent invention comprises the following arrangement.

[0014] In order to achieve the above objects, the present inventioncomprises the following means. That is, an image processing apparatuswhich can accept and parallelly execute a plurality of jobs, comprising:

[0015] a stop key for instructing to stop a job during job execution;

[0016] a console which allows a user to select any of jobs in a listdisplayed on a display unit; and

[0017] a controller for, when the user instructs to stop a job by thestop key, displaying a list of all jobs which are being executed on thedisplay unit, and stopping a job selected from the list.

[0018] More preferably, when the user instructs to stop a job by thestop key, the controller pauses all jobs which are being executed,displays a list of all the paused jobs on the display unit, and restartsexecution of jobs which are not selected from the list, so as to stopthe selected job.

[0019] More preferably, when the user instructs to stop a job by thestop key, the controller checks the number of jobs which are beingexecuted, stops a job if only one job is being executed, displays a listof all jobs which are being executed on the display unit if a pluralityof jobs are being executed, and stops a job selected from the list.

[0020] More preferably, the apparatus further comprising appending meansfor appending arbitrary job information to an input job in addition tothe identification information.

[0021] Another aspect of the present invention comprises the followingarrangement.

[0022] An image processing apparatus which can accept and parallellyexecute a plurality of jobs, comprising:

[0023] a stop key for instructing to stop a job during job execution;

[0024] a discrimination unit for discriminating a currently set stopmode when a user requests to stop a job by the stop key; and

[0025] a controller for stopping a job in accordance with the stop modediscriminated by the discrimination means.

[0026] More preferably, when the stop mode is a first mode, thecontroller stops an image scan job of the plurality of jobs.

[0027] More preferably, the apparatus further comprises:

[0028] a console which allows the user to select any of jobs in a listdisplayed on a display unit, and

[0029] wherein when the stop mode is a second mode, the controller stopsan image scan job if no jobs other than the image scan job are found,and displays existing jobs on the display unit and deletes a jobselected from the displayed jobs if print or communication jobs arefound.

[0030] More preferably, the apparatus further comprises:

[0031] a console which allows the user to select any of jobs in a listdisplayed on a display unit, and wherein when the stop mode is a thirdmode, if print or communication jobs are found, the controller displaysexisting jobs on the display unit, and deletes a job selected from thedisplayed jobs.

[0032] Other features and advantages of the present invention will beapparent from the following description taken in conjunction with theaccompanying drawings, in which like reference characters designate thesame or similar parts throughout the figures thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The accompanying drawings, which are incorporated in andconstitute a part of the specification, illustrate embodiments of theinvention and, together with the description, serve to explain theprinciples of the invention.

[0034]FIG. 1 is a block diagram for explaining the arrangement of acontroller unit to which an image processing apparatus according to thefirst embodiment of the present invention can be applied;

[0035]FIG. 2 is a view showing image input/output devices (a scanner andprinter shown in FIG. 1) to which an image processing apparatus of thepresent invention can be applied;

[0036]FIG. 3 is a plan view showing the arrangement of a console shownin FIG. 1;

[0037]FIG. 4 is a block diagram for explaining the arrangement of ascanner image processor shown in FIG. 1;

[0038]FIG. 5 is a block diagram for explaining the arrangement of aprinter image processor shown in FIG. 1;

[0039]FIG. 6 is a block diagram for explaining the arrangement of animage compression processor shown in FIG. 1;

[0040]FIG. 7 is a block diagram for explaining the arrangement of animage rotation processor shown in FIG. 1;

[0041]FIG. 8 is a view for explaining image data transfer fromdiscontinuous addresses by an image bus I/F controller shown in FIG. 7;

[0042]FIG. 9 is a view for explaining an image rotation process by animage rotation section shown in FIG. 7;

[0043]FIG. 10 is a block diagram for explaining the arrangement of adevice I/F shown in FIG. 1;

[0044]FIG. 11 is a diagram for explaining the arrangement of the overallnetwork system to which the image processing apparatus of the presentinvention can be applied;

[0045]FIG. 12 is a software block diagram of a hybrid machine to whichthe image processing apparatus of the present invention can be applied;

[0046]FIG. 13 is a block diagram showing built-in application blocksthat pertain to distribution in the image processing apparatus of thepresent invention;

[0047]FIG. 14 shows an operation window displayed on an LCD display ofthe console shown in FIG. 3;

[0048]FIG. 15 shows an ID input window displayed on the LCD display ofthe console shown in FIG. 3;

[0049]FIG. 16 shows an ID input window displayed on the LCD display ofthe console shown in FIG. 3;

[0050]FIG. 17 shows an ID input window displayed on the LCD display ofthe console shown in FIG. 3;

[0051]FIG. 18 shows an ID input window displayed on the LCD display ofthe console shown in FIG. 3;

[0052]FIG. 19 shows an enlargement/reduction setting sub-windowdisplayed on the LCD display of the console shown in FIG. 3;

[0053]FIG. 20 shows a paper select sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0054]FIG. 21 shows a sorter setting sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0055]FIG. 22 shows a two-sided copy setting sub-window displayed on theLCD display of the console shown in FIG. 3;

[0056]FIG. 23 shows a SEND main window displayed on the LCD display ofthe console shown in FIG. 3;

[0057]FIG. 24 shows a SEND initial window displayed on the LCD displayof the console shown in FIG. 3;

[0058]FIG. 25 shows a SEND initial window displayed on the LCD displayof the console shown in FIG. 3;

[0059]FIG. 26 shows a Detail sub-window (detailed information window)displayed on the LCD display of the console shown in FIG. 3;

[0060]FIG. 27 shows a search sub-window displayed on the LCD display ofthe console shown in FIG. 3;

[0061]FIG. 28 shows a search class list displayed on the LCD display ofthe console shown in FIG. 3;

[0062]FIG. 29 shows a search attribute list displayed on the LCD displayof the console shown in FIG. 3;

[0063]FIG. 30 shows a search condition list displayed on the LCD displayof the console shown in FIG. 3;

[0064]FIG. 31 shows a search address book list displayed on the LCDdisplay of the console shown in FIG. 3;

[0065]FIG. 32 shows an example of a search result displayed on the LCDdisplay of the console shown in FIG. 3;

[0066]FIG. 33 shows a full keyboard displayed on the LCD display of theconsole shown in FIG. 3;

[0067]FIG. 34 shows a ten-key pad displayed on the LCD display of theconsole shown in FIG. 3;

[0068]FIG. 35 shows a Person class detailed sub-window displayed on theLCD display of the console shown in FIG. 3;

[0069]FIG. 36 shows a Person class detailed sub-window displayed on theLCD display of the console shown in FIG. 3;

[0070]FIG. 37 shows a Data Base class detailed sub-window displayed onthe LCD display of the console shown in FIG. 3;

[0071]FIG. 38 shows a Group class detailed sub-window displayed on theLCD display of the console shown in FIG. 3;

[0072]FIG. 39 shows an HD SETTING sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0073]FIG. 40 shows a printout sub-window displayed on the LCD displayof the console shown in FIG. 3;

[0074]FIG. 41 shows a paper size list displayed on the LCD display ofthe console shown in FIG. 3;

[0075]FIG. 42 shows a paper size list displayed on the LCD display ofthe console shown in FIG. 3;

[0076]FIG. 43 shows a Scan setting sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0077]FIG. 44 shows a paper size select list displayed on the LCDdisplay of the console shown in FIG. 3;

[0078]FIG. 45 shows a resolution list displayed on the LCD display ofthe console shown in FIG. 3;

[0079]FIG. 46 shows a paper size select list displayed on the LCDdisplay of the console shown in FIG. 3;

[0080]FIG. 47 shows a RETRIEVE main window displayed on the LCD displayof the console shown in FIG. 3;

[0081]FIG. 48 shows a Bookmark sub-window displayed on the LCD displayof the console shown in FIG. 3;

[0082]FIG. 49 shows an E-mail sub-window displayed on the LCD display ofthe console shown in FIG. 3;

[0083]FIG. 50 shows a Fax sub-window displayed on the LCD display of theconsole shown in FIG. 3;

[0084]FIG. 51 shows an FTP Server sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0085]FIG. 52 shows a Print Setting sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0086]FIG. 53 shows a TASKS main window displayed on the LCD display ofthe console shown in FIG. 3;

[0087]FIG. 54 shows a WWW task detailed sub-window displayed on the LCDdisplay of the console shown in FIG. 3;

[0088]FIG. 55 shows a check time sub-window displayed on the LCD displayof the console shown in FIG. 3;

[0089]FIG. 56 shows a check time sub-window displayed on the LCD displayof the console shown in FIG. 3;

[0090]FIG. 57 shows a check time sub-window displayed on the LCD displayof the console shown in FIG. 3;

[0091]FIG. 58 shows a Management main window displayed on the LCDdisplay of the console shown in FIG. 3;

[0092]FIG. 59 shows a Configuration main window displayed on the LCDdisplay of the console shown in FIG. 3;

[0093]FIG. 60 shows an error window displayed on the LCD display of theconsole shown in FIG. 3, which is displayed when some error hasoccurred;

[0094]FIG. 61 is a diagram showing exchanges among a DIS, job manager,and document managers such as scan manager, print manager, and the likein the image processing apparatus to which the present invention can beapplied;

[0095]FIG. 62 shows various databases (to be abbreviated as DBshereinafter) held in the DIS shown in FIG. 61;

[0096]FIG. 63 is a block diagram for explaining an example of thehardware arrangement that pertains to a scan operation in the imageprocessing apparatus to which the present invention can be applied;

[0097]FIG. 64 is a block diagram for explaining an example of thesoftware arrangement that pertains to a scan operation in the imageprocessing apparatus to which the present invention can be applied;

[0098]FIG. 65 shows a parameter table that pertains to a scan operationof the image processing apparatus to which the present invention can beapplied;

[0099]FIG. 66 is a block diagram showing an example of the hardwarearrangement that pertains to a print operation in the image processingapparatus to which the present invention can be applied;

[0100]FIG. 67 is a timing chart showing the image data send timing ofthe image processing apparatus to which the present invention can beapplied;

[0101]FIG. 68 is a view for explaining setting items of an engineinterface board shown in FIG. 66;

[0102]FIG. 69 is a view for explaining setting items and control andsetting commands via a DPRRAM;

[0103]FIG. 70 shows the format of job management data managed by a jobmanager;

[0104]FIG. 71 is a flow chart showing the first control processingsequence of the image processing apparatus of the present invention;

[0105]FIG. 72 shows an example of a stop job select window displayed onthe LCD display of the console shown in FIG. 3;

[0106]FIG. 73 shows an example of a message window of a job stop messagedisplayed on the LCD display of the console shown in FIG. 3;

[0107]FIG. 74 is a flow chart showing the second control processingsequence of the image processing apparatus of the present invention;

[0108]FIG. 75 is a flow chart showing the third control processingsequence of the image processing apparatus of the present invention;

[0109]FIG. 76 is a view for explaining a memory map of a storage mediumthat stores various data processing programs which can be read out bythe image processing apparatus according to the present invention;

[0110]FIG. 77 is a flow chart showing processing upon depression of astop key in a digital hybrid machine of the fourth embodiment;

[0111]FIG. 78 is a flow chart showing processing upon depression of thestop key in the digital hybrid machine of the fourth embodiment;

[0112]FIG. 79 is a flow chart showing processing upon depression of thestop key in the digital hybrid machine of the fourth embodiment;

[0113]FIG. 80 is a flow chart showing processing upon depression of thestop key in the digital hybrid machine of the fourth embodiment; and

[0114]FIG. 81 shows an example of a job list.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0115] [First Embodiment]

[0116] An image processing apparatus according to the present inventionand its operation will be described in detail hereinafter.

[0117] [Hardware]

[0118] [Overall Arrangement]

[0119] <Controller Unit>

[0120]FIG. 1 is a block diagram for explaining the arrangement of acontroller unit to which an image processing apparatus according to thefirst embodiment of the present invention can be applied.

[0121] Referring to FIG. 1, reference numeral 2000 denotes a controllerunit which is connected to a scanner 2070 as an image input device and aprinter 2095 as an image output device, and is also connected to a LAN2011 and public line (WAN) 2051 to exchange image information and deviceinformation.

[0122] Reference numeral 2001 denotes a CPU for controlling the entiresystem on the basis of programs stored in a ROM 2003 or another storagemedium (not shown). Reference numeral 2002 denotes a RAM which serves asa system work memory used upon operating the CPU 2001, and also servesas an image memory for temporarily storing image data. The ROM 2003 is aboot ROM which stores a boot program of the system.

[0123] Reference numeral 2004 denotes an HDD (hard disk drive) whichstores system software, image data, and the like. Reference numeral 2006denotes a console I/F which interfaces with a console (UI) 3000, andoutputs image data to be displayed on the console 3000 to it. Also, theI/F 2006 sends information input by the user of this system at theconsole 3000 to the CPU 2001.

[0124] Reference numeral 2010 denotes a network controller (Network)which is connected to the LAN 2011 to exchange information.

[0125] Reference numeral 2050 denotes a modem (Modem) which is connectedto the public line 2051 to exchange information. These devices areconnected to a system bus 2007.

[0126] Reference numeral 2005 denotes an image bus interface (Image BusI/F) which is a bus bridge for connecting the system bus 2007 and animage bus 2008 which transfers image data at high speed to convert thedata structure. The image bus 2008 comprises a PCI bus or IEEE1394.

[0127] The following devices are connected to the image bus 2008.

[0128] Reference numeral 2060 denotes a raster image processor (RIP)which rasterizes a code (PDL code) described in a page descriptionlanguage to a bitmap image. Reference numeral 2020 denotes a device I/Fwhich connects the scanner 2070 as the image input device and theprinter 2095 as the image output device to the controller unit 2000 toconvert image data between synchronous and asynchronous systems.

[0129] Reference numeral 2080 denotes a scanner image processor forcorrecting, modifying, and editing input image data. Reference numeral2090 denotes a printer image processor which performs printercorrection, resolution conversion, and the like of print output imagedata. Reference numeral 2030 denotes an image rotation processor forrotating image data. Reference numeral 2040 denotes an image compressionprocessor which compresses/expands multi-valued image data by JPEG andbinary image data by JBIG, MMR, or MH.

[0130] <Image Input/output Units (Scanner, Printer)>

[0131]FIG. 2 shows image input/output devices (the scanner 2070 andprinter 2095 shown in FIG. 1) to which the image processing apparatus ofthe present invention can be applied.

[0132] The scanner 2070 as the image input device illuminates an imageon paper as a document, and scans a CCD line sensor to convert thatimage into an electrical signal as raster image data.

[0133] Reference numeral 2072 denotes a document feeding device(document feeder) which feeds document sheets set on a tray 2073 one byone to scan a document image.

[0134] The scan operation of a document image will be explained below.

[0135] When the device user sets document sheets on the tray 2073 of thedocument feeder 2072 and inputs a scan start instruction at the console3000 shown in FIG. 1, the CPU 201 supplies an instruction (2071 shown inFIG. 1) to the scanner 2070 and the feeder 2072 feeds document sheetsone by one to scan a document image.

[0136] The printer 2095 as the image output device converts raster imagedata 2096 into an image on a paper sheet, and can use as its conversionmethod any of an electrophotography method using a photosensitive drumor photosensitive belt, an ink-jet method for ejecting ink from a smallnozzle array to directly print an image on a paper sheet, a sublimationmethod, a thermal transfer method, and the like.

[0137] Reference numerals 2101 to 2104 denote paper cassettes whichstore paper sheets having different paper sizes or directions, and thelike. The printer 2095 has a plurality of paper feed stages to be ableto select different paper sizes or directions, and is set with thecorresponding paper cassettes 2101 to 2104. Reference numeral 2111denotes an exhaust tray for receiving paper sheets that have undergone aprint process.

[0138] The print operation will be explained below.

[0139] The print operation starts in response to an instruction (2096shown in FIG. 1) from the CPU 2001 shown in FIG. 1, prints on a papersheet fed from one of the paper cassettes 2101 to 2104, and exhausts thepaper sheet onto the exhaust tray 2111.

[0140] <Console>

[0141]FIG. 3 is a plan view for explaining the arrangement of theconsole 3000 shown in FIG. 1.

[0142] Referring to FIG. 3, reference numeral 3001 denotes an LCDdisplay, which is prepared by adhering a touch panel sheet on an LCD,displays operation windows of the system, and sends position informationof a given displayed key when it is pressed.

[0143] Reference numeral 3002 denotes a start key which is used tostart, e.g., the scan operation of a document image. Two color LEDs,i.e., green and red LEDs are provided to the central portion of thestart key 3002, and indicate depending on the color if the start key3002 is ready to be used.

[0144] Reference numeral 3003 denotes a stop key which is used to stopthe operation which is in progress. Reference numeral 3004 denotes an IDkey used to input the user ID of the user. Reference numeral 3005denotes a reset key which is used to reset settings from the console3000.

[0145] <Scanner Image Processor>

[0146]FIG. 4 is a block diagram for explaining the arrangement of thescanner image processor 2080 shown in FIG. 1, and the same referencenumerals in FIG. 4 denotes the same parts as in FIG. 1.

[0147] Referring to FIG. 4, reference numeral 2081 denotes an image busI/F controller, which is connected to the image bus 2008 to control itsbus access sequence, and controls and generates timings of respectivedevices in the scanner image processor 2080.

[0148] Reference numeral 2082 denotes a filter processor which makesconvolution operations using a spatial filter. Reference numeral 2083denotes an editor which recognizes a closed region bounded by a markerpen from input image data, and performs image modification processessuch as shading, hatching, negative-positive inversion, and the like ofimage data in that closed region.

[0149] Reference numeral 2084 denotes a zoom processor forenlarging/reducing by making interpolation operations in the main scandirection of a raster image when the resolution of the scanned image isto be changed. Zooming in the sub-scan direction is attained by changingthe scan speed of a line sensor (not shown) for scanning an image.

[0150] Reference numeral 2085 denotes a table converter for convertingimage data as scanned luminance data into density data. Referencenumeral 2086 denotes a binarization processor for binarizingmulti-valued grayscale image data by error diffusion, a screen process,or the like. The image data that has undergone the binarization processof the binarization processor 2086 is transferred onto the image bus2008 via the image bus controller 2081 again.

[0151] <Printer Image Processor>

[0152]FIG. 5 is a block diagram for explaining the arrangement of theprinter image processor 2090 shown in FIG. 1, and the same referencenumerals in FIG. 5 denotes the same parts as in FIG. 1.

[0153] Referring to FIG. 5, reference numeral 2091 denotes an image busI/F controller which is connected to the image bus 2008 to control itsbus access sequence, and controls and generates timings of respectivedevices in the printer image processor 2091.

[0154] Reference numeral 2092 denotes a resolution converter whichperforms resolution conversion for converting image data coming from theNetwork 2011 or public line 2051 into the resolution of the printer2095. Reference numeral 2093 denotes a smoothing processor whichperforms a process for smoothing jaggy (staircasing of an image thatappears at a black and white boundary such as an oblique line) of imagedata after resolution conversion.

[0155] <Image Compression Section>

[0156]FIG. 6 is a block diagram for explaining the arrangement of theimage compression processor 2040 shown in FIG. 1, and the same referencenumerals in FIG. 6 denote the same parts as in FIG. 1.

[0157] Referring to FIG. 6, reference numeral 2041 denotes an image busI/F controller which is connected to the image bus 2008 controls its busaccess sequence, and makes timing control to exchange data with inputand output buffers 2042 and 2045 and control such as mode setting andthe like for an image compression section 2043.

[0158] The image compression process operation will be explained below.

[0159] The CPU 2001 makes setting for image compression control in theimage bus I/F controller 2041 via the image bus 2008. With this setting,the image bus I/F controller 2041 makes settings (e.g., settings of MMRcompression, JBIG expansion, and the like) required for imagecompression in the image compression section 2043. After the requiredsettings, the CPU 2001 grants permission of image data transfer to theimage bus I/F controller 2041.

[0160] With this permission, the image bus I/F controller 2041 startsimage data transfer from the RAM 2002 or a device on the image bus 2008.The received image data is temporarily stored in the input buffer 2042,and is transferred at a given speed in response to an image data requestfrom the image compression section 2043.

[0161] In this case, the input buffer 2042 checks whether or not imagedata can be transferred between the image bus I/F controller 2041 andimage compression section 2043, and controls to inhibit data transfer ifa read of image data from the image bus 2008 and a write of image datato the image compression section 2043 are disabled (such control will bereferred to as handshake hereinafter).

[0162] The image compression section 2043 temporarily stores thereceived image data in a RAM 2044. This is because data for severallines are required to implement image compression depending on the imagecompression process to be executed, i.e., the first line of image datacan be compressed only after image data for several lines have beenprepared.

[0163] The image data that has undergone image compression isimmediately sent to the output buffer 2045. The output buffer 2045 makeshandshake between the image bus I/F controller 2041 and imagecompression section 2043, and transfers the image data to the image busI/F controller 2041. The image bus I/F controller 2041 transfers thetransferred compressed (or expanded) image data to the RAM 2002 or adevice on the image bus 2008.

[0164] Such series of processes repeat themselves until the CPU 2001ceases to issue a process request (upon completion of processes of arequired number of pages) or until the image compression section issuesa stop request (upon generation of errors in compression and expansion).

[0165] <Image Rotation Processor>

[0166]FIG. 7 is a block diagram for explaining the arrangement of theimage rotation processor 2030 shown in FIG. 1, and the same referencenumerals in FIG. 7 denote the same parts as in FIG. 1.

[0167] Referring to FIG. 7, reference numeral 2031 denotes an image busI/F controller which is connected to the image bus 2008 to control itsbus sequence, and makes control for setting a mode and the like in animage rotation section 2032 and timing control to transfer image data tothe image rotation section 2032.

[0168] The image rotation process operation will be explained below.

[0169] The CPU 2001 makes setting for image rotation control in theimage bus I/F controller 2031 via the image bus 2008. With this setting,the image bus I/F controller 2031 makes setting required for imagerotation (e.g., sets the image size, rotation direction, angle, and thelike) in the image rotation section 2032. Upon completion of therequired setting, the CPU 2001 grants permission of image data transferto the image bus I/F controller 2031.

[0170] With this permission, the image bus I/F controller 2031 begins totransfer image data from the RAM 2002 or a device on the image bus 2008.Assume that the image data transfer size from the RAM 2002 or a deviceon the image bus 2008 by the image bus I/F controller 2031 is 32 bits,and the image size which is to undergo rotation is 32×32 (bits). Also,image transfer is done in units of 32 bits upon transferring image dataonto the image bus 2008 (assume that a binary image is to be processed).

[0171] In order to obtain a 32×32 (bit) image, as described above, datatransfer in units of 32 bits must be done 32 times, and image data mustbe transferred from discontinuous addresses (see FIG. 8 to be describedlater).

[0172] Image data transferred by discontinuous addressing is written ina RAM 2033 so as to rotate through a desired angle when it is read out.For example, in case of 90° counterclockwise rotation, initiallytransferred 32-bit image data is written in the Y-direction, as shown inFIG. 9 (to be described later). The written image data is read out inthe X-direction to rotate the image.

[0173] Upon completion of 32×32 (bit) image rotation (write to the RAM2033), the image rotation section 2032 reads out image data from the RAM2033 by the aforementioned read method, and transfers that image to theimage bus I/F controller 2031.

[0174] Upon receiving the image data which has rotated, the image busI/F controller 2031 transfers data to the RAM 2002 or a device on theimage bus 2009 by continuous addressing.

[0175] Such series of processes repeat themselves until the CPU 2001ceases to issue a process request (upon completion of processes of arequired number of pages).

[0176]FIG. 8 is a view for explaining image data transfer fromdiscontinuous addresses by the image bus I/F controller 2031 shown inFIG. 7.

[0177] Referring to FIG. 8, reference numeral 900 denotes a sourcememory; and 901, 32×32 (bit) image data in the memory 900.

[0178] As shown in FIG. 8, in order to obtain a 32×32 (bit) image, datatransfer in units of 32 bits repeats 32 times from discontinuousaddresses like 32 bits (32 bits in the X-direction) from a sourceaddress value “100000h (h for hexadecimal notation)”, 32 bits from asource address value “101000h”, 32 bits from a source address value“102000h”, 32 bits from a source address value “103000h, . . . , 32 bitsfrom a source address value “11F000h”.

[0179]FIG. 9 is a view for explaining the image rotation process by theimage rotation section 2032 shown in FIG. 7.

[0180] As shown in FIG. 9, image data transferred by discontinuousaddressing is written in the RAM 2033 so as to rotate through a desiredangle when it is read out. For example, in case of 90° counterclockwiserotation, initially transferred 32-bit image data is written in theY-direction. The next transferred 32-bit image data is written in theY-direction from an address “1” larger than the address from which theinitially transferred image data is written, and this process isrepeated. Upon completion of transfer of all image data, the writtenimage data is read out in the X-direction, thus rotating an image.

[0181] <Device I/F>

[0182]FIG. 10 is a block diagram for explaining the arrangement of thedevice I/F 2020 shown in FIG. 1, and the same reference numerals in FIG.10 denote the same parts as in FIG. 1.

[0183] Referring to FIG. 10, reference numeral 2021 denotes an image busI/F controller which is connected to the image bus 2008 to control itsbus access sequence, and controls and generates timings of devices inthe device I/F 2020. Also, the controller 2021 generates control signalsto the external scanner 2070 and printer 2095.

[0184] Reference numeral 2022 denotes a scan buffer which temporarilysaves image data sent from the scanner 2070, and synchronously outputsimage data onto the image bus 2008. Reference numeral 2023 denotes aserial-to-parallel/parallel-to-serial converter for converting imagedata saved in the scan buffer 2022 into the data width of image datathat can be transferred onto the image bus 2008 by arranging the imagedata in a given order or breaking it up. Reference numeral 2024 denotesa parallel-to-serial/serial-to-parallel converter for converting imagedata transferred from the image bus -2008 into the data width of imagedata that can be saved in a print buffer 2025 by breaking up the imagedata or arranging it in a given order.

[0185] The print buffer 2025 temporarily saves image data sent from theimage bus 2008, and synchronously outputs image data to the printer2095.

[0186] The processing sequence upon image scan will be explained below.

[0187] Image data sent from the scanner 2070 is saved in the scan buffer2022 in synchronism with a timing signal sent from the scanner 2070. Ifthe image bus 2008 comprises a PCI bus, when 32 bits or more image dataare stored in the buffer, the image data for 32 bits are sent from thebuffer to the serial-to-parallel/parallel-to-serial converter 2023 byFIFO to be converted into 32-bit image data, and the converted imagedata is transferred onto the image bus 2008 via the image bus I/Fcontroller 2021.

[0188] On the other hand, if the image bus 2008 comprises IEEE1394,image data in the buffer are sent from the buffer to theserial-to-parallel/parallel-to-serial converter 2023 by FIFO to beconverted into serial image data, and the serial image data istransferred onto the image bus 2008 via the image bus I/F controller2021.

[0189] The processing sequence upon image print will be explained below.

[0190] If the image bus 2008 comprises a PCI bus, 32-bit image data sentfrom the image bus 2008 is received by the image bus I/F controller2021, is sent to the parallel-to-serial/serial-to-parallel converter2024, is broken up into image data corresponding to the number of inputdata bits of the printer 2095, and is saved in the print buffer 2025.

[0191] If the image bus 2008 comprises IEEE1394, serial data sent fromthe image bus 2008 is received by the image bus I/F controller 2021, issent to the parallel-to-serial/serial-to-parallel converter 2024, isconverted into image data corresponding to the number of input data bitsof the printer 2095, and is saved in the print buffer 2025.

[0192] Image data in the buffer is sent to the printer 2095 by FIFO insynchronism with a timing signal sent from the printer 2095.

[0193] [Software]

[0194] <Overall System>

[0195]FIG. 11 is a diagram for explaining the arrangement of the entirenetwork system to which the image processing apparatus of the presentinvention can be applied.

[0196] Reference numeral 1001 denotes an image input/output apparatus towhich the image processing apparatus of the present invention can beapplied, and comprises the scanner 2070 and printer 2095 shown inFIG. 1. The apparatus 1001 can output an image scanned by the scanner2070 onto the local area network (to be abbreviated as LAN hereinafter)2011, and can print out an image received from the LAN by the printer2095.

[0197] Also, the apparatus 1001 can send an image scanned by the scanner2070 onto PSTN or ISDN 1030 by a FAX transmission means (not shown), orcan print out an image received from the PSTN or ISDN 1030 by theprinter 2095.

[0198] Reference numeral 1002 denotes a database server which managesbinary and multi-valued images scanned by the image input/outputapparatus 1001 as a database. Reference numeral 1003 denotes a databaseclient of the database server 1002, which can browse and search imagedata saved in the database server 1002. Reference numeral 1004 denotesan e-mail server which can receive an image scanned by the imageinput/output apparatus 1001 as an attachment to an e-mail. Referencenumeral 1005 denotes an e-mail client which can receive and browse mailsreceived by the e-mail server 1004 and can send e-mails.

[0199] Reference numeral 1006 denotes a WWW server which provides anHTML document to the LAN, and the image input/output apparatus 1001 canprint out an HTML document provided by the WWW server. Reference numeral1011 denotes a router which connects the LAN 2011 to anInternet/intranet 1012.

[0200] To the Internet/intranet 1012, apparatuses 1021, 1022, 1023, and1024 which are respectively the same as the database server 1002, WWWserver 1006, e-mail server 1004, and image input/output apparatus 1001to which the image processing apparatus of the present invention can beapplied, are connected.

[0201] On the other hand, the image input/output apparatus 1001 cancommunicate with a FAX apparatus 1031 via the PSTN or ISDN 1030.

[0202] A printer 1040 is also connected to the LAN 2011, and can printout an image scanned by the image input/output apparatus 1001.

[0203] <Overall Arrangement of Software Blocks>

[0204]FIG. 12 is a software block diagram of a hybrid machine to whichthe image processing apparatus of the present invention can be applied.

[0205] Referring to FIG. 12, reference numeral 1501 denotes a userinterface module (UI), which provides a user interface, and mediatesbetween the operator and devices when the operator makes variousoperations and settings of this hybrid machine. This module transfersinput information to various modules (to be described below) inaccordance with operator's operations to issue a process request, setdata, and so forth.

[0206] Reference numeral 1502 denotes an address-book module(Address-Book), which is a database module that manages the sendingaddresses, communication destinations, and the like of data. Thecontents of this Address-Book 1502 undergo addition, deletion, andretrieval of data by operations from the UI 1501, and this module isused to supply sending address/communication destination information ofdata to respective modules (to be described later) in accordance withoperator's operations.

[0207] Reference numeral 1503 denotes a web server module (Web-Server),which is used to inform a Web client (not shown) of managementinformation of this hybrid machine in response to a request from thatWeb client. The management information is read via a Control-API 1518(to be described later), and is sent to the Web client via an HTTP 1512,TCP/IP 1516, and Network-Driver 1517 (to be described later).

[0208] Reference numeral 1504 denotes a universal send module(Universal-Send), which controls data distribution, and distributes datadesignated by the operator via the UI 1501 to a communication (output)destination similarly designated by the operator. Also, when theoperator designates generation of distribution data using the scannerfunction of this machine, the Universal-Send 1504 operates the machinevia the Control-API 1518 (to be described later) to generate data.

[0209] Reference numeral 1505 denotes a printer module (P550), which isexecuted when a printer is designated as an output destination in theUniversal-Send 1504.

[0210] Reference numeral 1506 denotes an e-mail module (E-Mail), whichis executed when an e-mail address is designated as a communicationdestination in the Universal-Send 1504.

[0211] Reference numeral 1507 denotes a database module (DB), which isexecuted when a database is designated as an output destination in theUniversal-Send 1504. Reference numeral 1508 denotes a DP, which isexecuted when a hybrid machine similar to the machine of the presentinvention is designated as an output destination in the Universal-Send1504.

[0212] Reference numeral 1509 denotes a remote copy scan module(Remote-Copy-Scan), which uses the scanner function of this hybridmachine, and executes a process equivalent to the copy functionimplemented by this hybrid machine alone to have another hybrid machineconnected via a network or the like as an output destination.

[0213] Reference numeral 1510 denotes a remote copy print module(Remote-Copy-Print) which uses the printer function of this hybridmachine, and executes a process equivalent to the copy functionimplemented by this hybrid machine alone to have another hybrid machineconnected via a network or the like as an input source.

[0214] Reference numeral 1511 denotes a web pull print module(Web-Pull-Print), which reads out information of various home pages onthe Internet or intranet, and prints the readout information.

[0215] Reference numeral 1512 denotes an HTTP module (HTTP), which isused when this hybrid machine communicates by HTTP, and provides acommunication environment to the aforementioned Web-Server 1503 andWeb-Pull-Print 1511 together with the TCP/IP 1516 (to be describedlater).

[0216] Reference numeral 1513 denotes an lpr module (lpr), whichprovides a communication environment to the printer module 1505 in theUniversal-Send 1504 together with the TCP/IP 1516 (to be describedlater).

[0217] Reference numeral 1514 denotes an SMTP module (SMTP) whichprovides a communication environment to the E-Mail 1506 in theUniversal-Send 1504 together with the TCP/IP 1516 (to be describedlater).

[0218] Reference numeral 1515 denotes a solution manager module (SLM:Salutation-Manager), which provides a communication environment to theDB 1507 and DP 1508 in the Universal-Send 1504, the Remote-Copy-Scan1509, and the Remote-Copy-Print 1510 mentioned above together with theTCP/IP 1516 (to be described below).

[0219] Reference numeral 1516 denotes a TCP/IP communication module(TCP/IP), which provides a network communication environment to theaforementioned modules via the Network-Driver 1517 (to be describedbelow).

[0220] Reference numeral 1517 denotes a network driver (Network-Driver),which controls portions physically connected to the network. Referencenumeral 1518 denotes a control API (Control-API), which provides aninterface with downstream modules such as a Job-Manager 1519 and thelike (to be described later) to upstream modules such as theUniversal-Send 1504 and the like, and improves versatility of respectivemodules by reducing dependency among the upstream and downstreammodules.

[0221] Reference numeral 1519 denotes a job manager module(Job-Manager), which interprets processes instructed by theaforementioned modules via the Control-API 1518, and suppliesinstructions to modules to be described below. This modulesimultaneously manages hardware processes executed in this hybridmachine.

[0222] Reference numeral 1520 denotes a CODEC manager module(CODEC-Manager), which manages and controls variouscompression/expansion processes of data among processes instructed bythe Job-Manager 1519.

[0223] Reference numeral 1521 denotes an FBE encoder module(FBE-Encoder), which compresses data scanned by a scan process that isimplemented by the Job-Manager 1519 and a Scanner-Manager 1524 by theFBE format.

[0224] Reference numeral 1522 denotes a JPEG-CODEC module (JPEG-CODEC),which executes a JPEG compression process of scanned data and a JPEGexpansion process of print data in the scan process that is implementedby the Job-Manager 1519 and Scanner-Manager 1524 and a print processimplemented by a Printer-Manager 1526.

[0225] Reference numeral 1523 denotes an MMR-CODEC module (MMR-CODEC),which executes an MMR compression process of scanned data and an MMRexpansion process of print data in the scan process that is implementedby the Job-Manager 1519 and Scanner-Manager 1524 and the print processimplemented by the Printer-Manager 1526.

[0226] Reference numeral 1524 denotes a scan manager module(Scanner-Manager), which manages and controls the scan processinstructed by the Job-Manager 1519.

[0227] Reference numeral 1525 denotes a SCSI driver (SCSI), whichcommunicates with the Scanner-Manager 1524 and a scanner unit internallyconnected to this hybrid machine.

[0228] Reference numeral 1526 denotes a printer manager(Printer-Manager), which manages and controls the print processinstructed by the Job-Manager 1519.

[0229] Reference numeral 1527 denotes an engine interface driver(Engine-I/F), which provides an I/F between the Printer-Manager 1526 anda print engine.

[0230] Reference numeral 1528 denotes a parallel port driver (Parallel),which provides an I/F used when the Web-Pull-Print 1511 outputs data toan output device (not shown) via a parallel port.

[0231] <Application>

[0232] An example of built-in applications of the image processingapparatus of the present invention will be explained below withreference to FIG. 13.

[0233]FIG. 13 is a block diagram showing built-in application blocksthat pertain to distribution in the image processing apparatus of thepresent invention.

[0234] Referring to FIG. 13, reference numeral 4050 denotes a blockwhich indicates a console application of the console 3000 shown in FIG.3, and corresponds to the UI 1501 shown in FIG. 12. Reference numeral4100 denotes a block which indicates the sending side of a remote copyapplication, and corresponds to the Remote-Copy-Scan 1509 shown in FIG.12. Reference numeral 4150 denotes a block which indicates the sendingside of universal send, and corresponds to the Universal-Send 1504 shownin FIG. 12.

[0235] Reference numeral 4200 denotes a block which indicates aWeb-Pull-Print module, and corresponds to the Web-Pull-Print 1511 shownin FIG. 12. Reference numeral 4250 denotes a block which indicates a WebServer module and corresponds to the Web-Server 1503 shown in FIG. 12.

[0236] Reference numeral 4300 denotes a block which indicates thereceiving side (print side) of remote copy, and corresponds to theRemote-Copy-Print 1510 shown in FIG. 12. Reference numeral 4350 denotesa block which receives and prints an image sent by universal send usinga versatile printer, and corresponds to the printer module (P550) 1505shown in FIG. 12. Reference numeral 4400 denotes a block which indicatesthe receiving side (print side) of remote print, and corresponds to theDP 1508 shown in FIG. 12.

[0237] Reference numeral 4450 denotes a block which receives and storesan image sent by universal send using a known Notes Server, andcorresponds to the DB 1507 shown in FIG. 12. Reference numeral 4500denotes a block which receives and stores a binary image sent byuniversal send, and corresponds to the DB 1507 shown in FIG. 12.Reference numeral 4550 denotes a block which receives and stores animage sent by universal send using a known Mail Server, and correspondsto the E-Mail 1506 shown in FIG. 12.

[0238] Reference numeral 4600 denotes a block which receives and storesa multi-valued image sent by universal send using a known mail server,and corresponds to the DB 1507 shown in FIG. 12. Reference numeral 4650denotes a block which indicates a known Web Server including informationcontents, and corresponds to the Web-Server 1503 shown in FIG. 12.Reference numeral 4700 denotes a known web browser which accesses theWeb Server and like of the present invention.

[0239] These applications will be described in detail below withreference to the blocks.

[0240] User Interface Application

[0241] Details of the User Interface (UI) indicated by block 4050 havebeen explained above, and the Address-Book 1502 will be described below.The Address-Book 1502 is saved in a nonvolatile storage device(nonvolatile memory, hard disk, or the like) in the image processingapparatus of the present invention, and describes features of devicesconnected to the network. For example, the Address-Book 1502 includesfeatures listed below for a device:

[0242] formal or alias name of the device;

[0243] network address of the device;

[0244] network protocol that the device supports;

[0245] document format that the device can process;

[0246] compression type that the device can process;

[0247] image resolution that the device can process;

[0248] information of available paper size and paper feed stage in casethat the device is a printer device; and

[0249] document folder name that can store a document in case that thedevice is a server (computer) device.

[0250] The applications to be described below can discriminate featuresof a destination on the basis of information described in theAddress-Book 1502.

[0251] The Address-Book 1502 is editable, and can be downloaded and usedor can be directly referred to when it is saved in a server computer orthe like in the network.

[0252] Remote Copy Application

[0253] The remote copy application indicated by block 4100 discriminatesresolution information of a device designated as a destination from theAddress-Book 1502, compresses a binary image scanned by the scannerusing known MMR compression in accordance with the discriminatedresolution information, converts the compressed image into TIFF (TaggedImage File Format), and sends that image to a printer device on thenetwork via the SLM 1515. The SLM 1515 is a kind of network protocols,which includes device control information called a known SalutationManager (or Smart Link Manager), although a detailed description thereofwill be omitted.

[0254] Universal Send Application

[0255] The universal send application indicated by block 4150 can sendan image to a plurality of destinations by a single image scan unlikethe remote copy application. The destinations are not limited to printerdevices, but an image can be directly sent to a so-called servercomputer.

[0256] The following explanation will be given in turn in correspondencewith destinations.

[0257] When it is determined based on the Address-Book 1502 that thedestination device can process LPD (Line Printer Daemons) as a knownnetwork protocol and known LIPS as printer control commands, an image isscanned in accordance with an image resolution similarly determinedbased on the Address-Book 1502, and the image itself is compressed usingknown FBE (First Binary Encoding) in this embodiment. Furthermore, thecompressed image is converted into LIPS codes, and is sent to a partnerdevice by LPR as a known network printer protocol.

[0258] When the destination device is a server device that cancommunicate by the SLM 1515, the server address and a designated folderin the server are detected from the Address-Book 1502, a binary imagescanned by the scanner is compressed using known MMR compression like inthe remote copy application. The compressed image is converted intoknown TIFF (Tagged Image File Format), and that image can be stored in aspecific folder in the server device on the network via the SLM 1515.

[0259] In the device of this embodiment, when it is determined that aserver as a partner device can process a multi-valued image that hasbeen compressed by known JPEG, a multi-valued image scanned in the samemanner as the binary image is converted into a known JFIF image usingknown JPEG compression, and that image can be stored in a specificfolder in the server device on the network via the SLM.

[0260] When the destination device is a known E-Mail server, a mailaddress described in the Address-Book 1502 is detected, and a binaryimage scanned by the scanner is compressed using known MMR compression.The compressed image is converted into known TIFF (Tagged Image FileFormat), and is sent to the E-Mail server using the known SMTP (SimpleMail Transfer Protocol) 1514. The subsequent sending process isimplemented by the Mail Server indicated by block 4550.

[0261] Web Pull Print Application.

[0262] Since the Web Pull-Print Application indicated by block 4200 isnot directly related to this embodiment, a description thereof will beomitted. *Web Server Application Since the Web Server application is notdirectly related to this embodiment, a description thereof will beomitted.

[0263] Operation windows displayed on the LCD display 3100 of theconsole 3000 shown in FIG. 3 will be described in detail below withreference to FIGS. 14 to 59.

[0264] [Operation Window]

[0265]FIG. 14 shows an operation window displayed on the LCD display3100 of the console 3000 shown in FIG. 3.

[0266] Referring to FIG. 14, reference numeral 3010 denotes a scanwindow which is displayed on the LCD display 3001 of the console 3000.The functions provided by the image processing apparatus of the presentinvention are classified into six major categories, i.e., Copy, Send,Retrieve, Tasks, Management, and Configuration, which correspond to sixmain tabs (COPY 3011, SEND 3012, RETRIEVE 3013, TASKS 3014, MGMT 3015,and CONFIG 3016) displayed on the upper portion on the operation window3010.

[0267] By clicking one of these main tabs, a window of the correspondingcategory can be selected. When a given category is not allowed to beselected, the display color of the corresponding main tab changes, andno reaction is obtained if the user clicks that tab.

[0268] Copy includes a function of performing a normal document copyingprocess using the scanner and printer of the own machine, and a function(remote copy) of copying a document using the scanner of the own machineand a printer connected via the network.

[0269] Send is a function of transferring a document set on the scannerof the own machine as an e-mail, an image to a remote printer, a FAXdocument, and a file (FTP), and to a database, and a plurality ofdestinations can be designated.

[0270] Retrieve is a function of retrieving a document from an externaldevice, and printing the retrieved document by the printer of the ownmachine. As the document retrieval means, WWW, e-mail, file transfer,and FAX can be used.

[0271] Tasks is a function of generating and managing tasks forautomatically processing an externally sent document such as a FAXdocument, Internet print, or the like, and periodically retrievingdocuments.

[0272] Management is a function of managing jobs, an address book,bookmarks, documents, account information, and the like.

[0273] Configuration is a function of performing setting for the ownmachine (network, timepiece, and the like).

[0274] A method of setting these functions will be explained below usingexamples of windows displayed on the LCD display 3001.

[0275] [ID Input Window]

[0276]FIG. 15 shows an ID input window displayed on the LCD display 3001of the console 3000 shown in FIG. 3.

[0277] Referring to FIG. 15, reference numeral 3020 denotes an ID windowwhich is displayed immediately after power ON and upon depression of theID key 3004 shown in FIG. 3.

[0278] Reference numeral 3021 denotes an ID input area for inputting auser ID. Reference numeral 3022 denotes a password input area forinputting a password.

[0279] Reference numeral 3024 denotes an OK button. When the user inputsthe correct user ID and password on the ID input window and then clicksthis OK button 3024, the operation window 3010 shown in FIG. 14 isdisplayed to allow operations.

[0280] One of the ID input area 3021 and password input area 3022 can beselected by directly clicking a desired input area.

[0281] [COPY Window]

[0282] FIGS. 16 to 18 show an ID input window displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3. Referring to FIG. 16,reference numeral 3100 denotes a COPY main window, which is displayedwhen the user clicks the corresponding main tab (COPY 3011) shown inFIG. 14.

[0283] When the user presses the start button 3002 shown in FIG. 3 whilethis COPY main window 3100 is displayed, the scanner operates, and theselected printer outputs a copy according to setting parametersdisplayed on the window.

[0284] As shown in FIG. 16, the COPY main window 3100 includes a printerselect button 3103 and printer display area 3102, an Image Qualityselect button 3105 and Image Quality display area 3104, a copy parameterindication 3101 as in the conventional copying machine,enlargement/reduction setting buttons 3106 and 3107, a paper selectbutton 3108, a sorter setting button 3110, a two-sided copy settingbutton 3112, density indicator and density setting buttons 3109, and tenkeys 3114.

[0285] Upon clicking the printer select button 3103, a list 3120 (FIG.17) of available printers (the printer of the own machine and thoseconnected via the network) is displayed as a pulldown window. When theuser selects a desired printer from the list, the list disappears, andthe selected printer name is displayed in the printer display area 3102.

[0286] Upon clicking the Image Quality setting button 3105, an ImageQuality list 3125 (FIG. 18) is displayed, and the user selects a desiredImage Quality from that list.

[0287] Upon clicking one of copy parameter setting buttons (theenlargement/reduction setting buttons 3106 and 3107, paper select button3108, sorter setting button 3110, two-sided copy setting button 3112,and density indicator and density setting buttons 3109), a correspondingone of sub-windows (an enlargement/reduction setting sub-window 3130shown in FIG. 19, a paper select sub-window 3140 shown in FIG. 20, asorter setting sub-window 3150 shown in FIG. 21, and a two-sided copysetting sub-window 3160 shown in FIG. 22) is displayed, and parameterscan be set as in the conventional copying machine. Also, the density canbe set as in the conventional copying machine.

[0288]FIG. 19 shows the enlargement/reduction setting sub-window 3130displayed on the LCD display 3001 of the console 3000 shown in FIG. 3.

[0289]FIG. 20 shows the paper select sub-window 3140 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3.

[0290]FIG. 21 shows the sorter setting sub-window 3150 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3.

[0291]FIG. 22 shows the two-sided copy setting sub-window 3160 displayedon the LCD display 3001 of the console 3000 shown in FIG. 3.

[0292] [SEND Window]

[0293]FIG. 23 shows a SEND main window displayed on the LCD display 3001of the console 3000 shown in FIG. 3.

[0294] Referring to FIG. 23, reference numeral 3200 denotes a SEND mainwindow, which is displayed upon clicking the corresponding main tab(SEND 3012) shown in FIG. 14.

[0295] When the user presses the start button 3002 shown in FIG. 3 whilethis SEND main window 3200 is displayed, the scanner operates, and aprocess for sending scanned image data to a selected destination by adesignated sending method starts.

[0296] The SEND main window 3200 includes a destination display area3202, detailed destination count display area 3203, destination scrollbuttons 3204, address book button 3208, New button 3209, Edit button3210, Delete button 3211, Subject input area 3205, Message input area3206, File Name input area 3207, Cover page check button 3212, Put IntoHD check button 3213, Print Out check button 3214, and Scan Settingbutton 3215.

[0297] In an initial state (including a reset state), no destinationsare displayed on the destination displayed field, and operation guidancemessages are displayed, like a SEND initial window 3201 shown in FIG.24.

[0298] The destination display area 3202 displays a list of inputdestinations. A new input is added to the end of the list. The detaileddestination count display area 3203 displays the number of destinationswhich are set currently. When the user selects a given destination fromthe destination display area and then clicks the Delete button 3211, theselected destination is deleted.

[0299] When the user clicks one of the Subject input area 3205, Messageinput area 3206, and File Name input area 3207, a full keyboard isdisplayed to allow input.

[0300] Upon clicking the Address Book button 3208, an address booksub-window 3220 shown in FIG. 25 is displayed.

[0301] Upon clicking the New button 3209, a Person class detailedsub-window 3270 shown in FIG. 35 is displayed, and a new destination canbe set.

[0302] When the user clicks the Edit button 3210 while a destinationbelonging to a Person class is selected, a Person class detailedsub-window 3290 shown in FIG. 36 is displayed.

[0303] Furthermore, when the user clicks the Edit button 3210 while adestination belonging to a Data Base class is selected, a Data Baseclass detailed sub-window 3310 shown in FIG. 37 is displayed.

[0304] When the user clicks the Edit button 3210 while a destinationbelonging to a Group class is selected, a Group class detailedsub-window 3320 shown in FIG. 38 is displayed.

[0305] When the user clicks the Put Into HD check button 3213, an HDSETTING sub-window 3330 shown in FIG. 39, which is used to make settingsfor sending information to a hard disk, is displayed.

[0306] When the user clicks the Print Out check button 3214, a print outsub-window 3340 shown in FIG. 40 is displayed.

[0307] When the user clicks the Scan Setting button 3215, a Scan settingsub-window 3370 shown in FIG. 43 is displayed.

[0308]FIG. 24 shows the SEND initial window 3201 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0309] [Address Book Sub-window]

[0310]FIG. 25 shows the address book sub-window 3220 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3.

[0311] As shown in FIG. 25, a destination with a select mark 3232 on anaddress book display area 3221 is added to the destination display area3202 on the SEND main window upon clicking an OK button 3231.

[0312] The contents of the address book are sorted in units of classesand in ascending or descending order of names upon clicking sort itemsetting buttons 3224 to 3226. An item select count display area 3227displays the number of items with select marks.

[0313] Upon clicking the OK button 3231 or a cancel button 3230, theaddress book sub-window is closed, and the SEND main window isdisplayed.

[0314] When the user clicks a Detail button 3229 while one of items inthe address book display area 3221 is selected, a Detail sub-window(detailed information window) 3235 shown in FIG. 26 is displayed.

[0315] Upon clicking a Search button 3228, a search sub-window 3240shown in FIG. 27 is displayed to search for a destination from a localaddress book or an external address server.

[0316]FIG. 26 shows the Detail sub-window (detailed information window)3235 displayed on the LCD display 3001 of the console 3000 shown in FIG.3.

[0317] As shown in FIG. 26, the Detail sub-window 3235 displays allkinds of information 3236 obtained from the address book as those of theselected item. Reference numeral 3237 denotes scroll buttons.

[0318] [Search Sub-window]

[0319]FIG. 27 shows the search sub-window 3240 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0320] As shown in FIG. 27, the upper portion of the search sub-window3240 is a search condition setting portion. A search class display area3245, search attribute display area 3247, search condition display area3249, and search address book display area 3252 display current choices.Upon clicking a search class setting button 3246, a search class list3260 shown in FIG. 28 is displayed. A class selected from this list isdisplayed on the search class display area 3245.

[0321] Upon clicking a search attribute setting button 3248, a searchattribute list 3261 shown in FIG. 29 is displayed. The attributesdisplayed in this list change as follows depending on the selectedsearch class:

[0322] Class: Person

[0323] Common Name, Address, Country

[0324] Class: Printer

[0325] Common Name, Owner, Location, Model, Type, Resolution, Color,Finisher Class

[0326] Class: Group

[0327] Common Name, Member

[0328] Class: Everything

[0329] All attributes (Common Name, Address, Country, Owner, Location,Model, Type, Resolution, Color, Finisher, Member) Upon clicking a searchcondition setting button 3250, a search condition list 3262 shown inFIG. 30 is displayed, and the user can select a condition from thatlist.

[0330] Upon clicking a search address book setting button 3253, a searchaddress book list 3263 shown in FIG. 31 is displayed, and the user canselect an address book from that list.

[0331] Upon clicking a search attribute value input area 3251, a fullkeyboard 3040 shown in FIG. 33 is displayed, and the user can inputvalues.

[0332] Upon clicking a Do Search button 3254, a search is made accordingto the set search conditions. Search results are displayed on a searchresult display area 3241, and the number of hits is displayed on asearch result count display area 3244.

[0333] When the user clicks a Detail button 3255 while one of items onthe search result display area is selected, detailed information 3235(FIG. 26) of that item is displayed.

[0334] Items which are displayed in the search result display area andare to be added as destinations are added with select marks as in asearch result example shown in FIG. 32.

[0335] Upon clicking an OK button 3257, the search sub-window is closedto display the SEND main window, and items with select marks are addedas destinations. Upon clicking a cancel button 3256, the searchsub-window is closed to display the SEND main window 3200, butdestinations remain the same.

[0336]FIG. 28 shows the search class list 3260 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0337]FIG. 29 shows the search attribute list 3261 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0338]FIG. 30 shows the search condition list 3262 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0339]FIG. 31 shows the search address book list 3263 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3.

[0340]FIG. 32 shows the display result example 3265 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0341] [Full Keyboard]

[0342]FIG. 33 shows the full keyboard 3040 displayed on the LCD display3001 of the console 3000 shown in FIG. 3, and the full keyboard 3040 isdisplayed when the user clicks a text input area.

[0343] As shown in FIG. 33, upon clicking a www. button 3041 or combutton 3042, characters “www.” or “com” are input. Since other keys havethe same functions as those of the conventional keyboard, a descriptionthereof will be omitted.

[0344] [Ten-key Pad]

[0345]FIG. 34 shows a ten-key pad 3050 displayed on the LCD display 3001of the console 3000 shown in FIG. 3, and the ten-key pad 3050 isdisplayed when the user clicks a numerical value input area or monthinput area. A description of keys will be omitted.

[0346] [Detailed Destination Sub-window]

[0347]FIG. 35 shows the Person class detailed sub-window 3270 displayedon the LCD display 3001 of the console 3000 shown in FIG. 3, and thiswindow is displayed when the user clicks the New button 3209 on the SENDmain window 3200 shown in FIG. 23.

[0348] As shown in FIG. 35, upon clicking a sending method select button(3271, 3272, 3273, 3274) or a detailed destination input area (3275,3276, 3277, 3278) corresponding to a sending method (e-mail, FAX,printer, FTP), the ten-key pad 3050 shown in FIG. 34 for FAX or the fullkeyboard 3040 shown in FIG. 33 for other methods is displayed, and adestination can be input.

[0349] Reference numerals 3279 to 3282 denote buttons for selectingsending options of the corresponding sending methods, but a detaileddescription thereof will be omitted.

[0350]FIG. 36 shows the Person class detailed sub-window 3290 displayedon the LCD display 3001 of the console 3000 shown in FIG. 3, and thiswindow is displayed when the user clicks the Edit button 3210 while adestination belonging to the Person class is selected on the SEND mainwindow 3200 shown in FIG. 23.

[0351] Details of the selected destination are displayed on fieldscorresponding to the detailed destination input areas 3275 to 3278 shownin FIG. 35, and can be edited when the ten-key pad or keyboard isdisplayed by the aforementioned method.

[0352]FIG. 37 shows the Data Base class detailed sub-window 3310displayed on the LCD display 3001 of the console 3000 shown in FIG. 3,and this window is displayed when the user clicks the Edit button 3210while a destination belonging to the Data Base class is selected on theSEND main window 3200 shown in FIG. 23.

[0353] As shown in FIG. 37, the Data Base class detailed sub-windowdisplays a database name 3311 and folder list 3312.

[0354]FIG. 38 shows the Group class detailed sub-window 3310 displayedon the LCD display 3001 of the console 3000 shown in FIG. 3, and thiswindow is displayed when the user clicks the Edit button 3210 while adestination belonging to the Group class is selected on the SEND mainwindow 3200 shown in FIG. 23.

[0355] As shown in FIG. 38, the Group class detailed sub-window displaysgroup members 3321.

[0356] [HD SETTING Sub-window]

[0357]FIG. 39 shows the HD SETTING sub-window 3330 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3. Note that a detaileddescription of this window will be omitted.

[0358] [Print Out Sub-window]

[0359]FIG. 40 shows the print out sub-window 3340 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0360] As shown in FIG. 40, the user can set a print count, paper size,zoom ratio, two-sided print, sort, resolution, and the like on the printout sub-window.

[0361] Upon clicking a paper size select button 3345, a paper size list3360 shown in FIG. 41 is displayed, and the user can select a desiredsize from there. Upon clicking a sorter select button 3350, an availablesorter list 3365 shown in FIG. 42 is displayed.

[0362]FIG. 41 shows the paper size list 3360 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0363]FIG. 42 shows the sorter list 3365 displayed on the LCD display3001 of the console 3000 shown in FIG. 3.

[0364] [Scan Setting Sub-window]

[0365]FIG. 43 shows the Scan Setting sub-window 3370 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3.

[0366] As shown in FIG. 43, when the user selects one of scan settingsfrom a Preset mode select field 3371 in the Scan Setting sub-window3370, the preset paper size, resolution, scan mode, and densitycorresponding to the selected setting are respectively displayed ondisplay areas 3375, 3377, 3379, and 3381. The user can manually edit thevalues of these items.

[0367] In FIG. 43, reference numeral 3376 denotes a paper size settingbutton. Upon clicking the button 3376, a paper size select list 3390shown in FIG. 44 is displayed. Reference numeral 3378 denotes aresolution setting button. Upon clicking the button 3378, a resolutionlist 3390 shown in FIG. 45 is displayed. Reference numeral 3380 denotesa scan mode setting button. Upon clicking the button 3380, a scan modelist 3392 shown in FIG. 46 is displayed.

[0368]FIG. 44 shows the paper size select list 3390 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3, and corresponds to awindow in a state wherein the paper size select list is displayed as apulldown window on the Scan Setting sub-window 3370. The user selectsthe size and direction of paper to be used from this paper size selectlist.

[0369]FIG. 45 shows the resolution list 3391 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3, and corresponds to awindow in a state wherein the resolution list is displayed as a pulldownwindow on the Scan Setting sub-window 3370. The user selects theresolution used from this resolution list.

[0370]FIG. 46 shows the scan mode list 3392 displayed on the LCD display3001 of the console 3000 shown in FIG. 3, and corresponds to a window ina state wherein the scan mode list is displayed as a pulldown window onthe Scan Setting sub-window 3370. The user selects the scan mode usedfrom this scan mode list.

[0371] [RETRIEVE Window]

[0372]FIG. 47 shows a RETRIEVE main window (WWW sub-window) displayed onthe LCD display 3001 of the console 3000 shown in FIG. 3.

[0373] Referring to FIG. 47, reference numeral 3400 denotes a RETRIEVEmain window, which is displayed upon clicking the corresponding main tab(RETRIEVE 3013) shown in FIG. 14.

[0374] As shown in FIG. 47, the RETRIEVE main window 3400 displays a PUTINTO HD check button 3405 and PRINT SETTING button 3406, which arecommonly used by WWW, E-mail, Fax, and FTP sub-tabs 3401, 3402, 3403,and 3404, and respective categories.

[0375] Upon clicking a given sub-tab (WWW 3401, E-mail 3402, Fax 3403,and FTP 3404 on the RETRIEVE main window 3400), a corresponding one ofWWW, E-mail, Fax, and FTP sub-windows is displayed. In an initial state(including a reset state), the WWW sub-window is displayed, and theRETRIEVE main window 3400 shown in FIG. 47 displays the WWW sub-window.

[0376] Upon clicking the Put Into HD check button 3406 common to therespective categories, the HD Setting sub-window 3330 shown in FIG. 39is displayed. The function of this window is the same as that of the HDSetting sub-window of Send.

[0377] Upon clicking the Print Setting button 3406 common to therespective categories, a Print Setting sub-window 3470 shown in FIG. 52is displayed. The function of this window is the same as that of thePrint Out sub-window of Send.

[0378] [WWW Sub-window]

[0379] When the user presses the start button 3002 shown in FIG. 3 whilethe WWW sub-window is displayed, a home page is printed in accordancewith settings displayed on the window. In this case, if the start buttonis pressed while no URL is displayed on a URL input area 3411, nofunction works.

[0380] Upon clicking the URL input area 3411 on the WWW sub-window, thefull keyboard 3040 is displayed, and the user can directly input a URL.Upon clicking a Link Depth input area 3412 and Max Pages input area3414, the ten-key pad 3050 shown in FIG. 34 is displayed, and the usercan directly input numerical values.

[0381] Reference numeral 3413 denotes a Link Depth setting button, withwhich the user can set a Link Depth. Reference numeral 3414 denotes aMax Pages setting button, with which the user can set Max Pages.

[0382] Upon clicking a Bookmark button 3419, a Bookmark sub-window 3460shown in FIG. 48 is displayed.

[0383] [Bookmark Sub-window]

[0384]FIG. 48 shows the Bookmark sub-window 3460 displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0385] As shown in FIG. 48, a list of set bookmarks is displayed on abookmark display area 3461 in the Bookmark sub-window 3460, and when theuser clicks one of lines, the selected line is highlighted. When theuser then clicks an OK button 3466, the Bookmark sub-window is closed,and a URL corresponding to the highlighted item is displayed on the URLinput area of the WWW sub-window. A description of functions of otherbuttons in the Bookmark sub-window will be omitted.

[0386] [E-mail Sub-window]

[0387]FIG. 49 shows an E-mail sub-window displayed on the LCD display3001 of the console 3000 shown in FIG. 3, and this sub-window isdisplayed upon clicking the corresponding sub-tab (E-mail 3402).

[0388] On the E-mail sub-window 3430, the user makes settings forreceiving E-mails. Upon clicking each input area (a server input area3431, Long Name input area 3432, and password input area 3433), the fullkeyboard 3040 shown in FIG. 33 is displayed to allow input.

[0389] [Fax Sub-window]

[0390]FIG. 50 shows a Fax sub-window displayed on the LCD display 3001of the console 3000 shown in FIG. 3, and this sub-window is displayedupon clicking the corresponding sub-tab (Fax 3403).

[0391] Referring to FIG. 50, reference numeral 3440 denotes a Faxsub-window which is used to input a FAX number. Upon clicking an inputarea 3441, the ten-key pad 3050 shown in FIG. 34 is displayed to allowinput of the FAX number.

[0392] [FTP Server Sub-window]

[0393]FIG. 51 shows an FTP Server sub-window displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3, and this sub-window isdisplayed upon clicking the corresponding sub-tab (FTP Server 3404).

[0394] In FIG. 51, reference numeral 3450 denotes an FTP Serversub-window, which is used to make setting for receiving data from aserver.

[0395] Upon clicking each of input areas 3451 to 3453, the full keyboard3040 shown in FIG. 33 is displayed to allow input.

[0396] [Print Setting Sub-window]

[0397]FIG. 52 shows the Print Setting sub-window 3470 displayed on theLCD display 3001 of the console 3000 shown in FIG. 3, and the functionof this sub-window is the same as that of the Print Out sub-window(print out sub-window 3340 shown in FIG. 40) of Send.

[0398] [TASKS Window]

[0399]FIG. 53 shows a TASKS main window displayed on the LCD display3001 of the console 3000 shown in FIG. 3.

[0400] Referring to FIG. 53, reference numeral 3500 denotes a TASKS mainwindow, which is displayed upon clicking the corresponding main tab(TASKS 3014) shown in FIG. 14.

[0401] When the user presses the start key 3002 shown in FIG. 3 whilethe TASKS main window 3500 is displayed, an automatic RETRIEVE operationis executed in accordance with parameters set on the TASKS main window3500.

[0402] The TASKS main window 3500 displays WWW, E-mail, Print Receive,Fax Receive, and Fax Polling sub-tabs (3501, 3502, 3503, 3504, and3505). In an initial state including a reset state, a WWW sub-window isdisplayed. This TASKS main window 3500 is also the WWW sub-window.

[0403] [WWW Sub-window]

[0404] On a WWW task list display area 3511, tasks held in the apparatusare displayed in the input order. The user adds select marks to tasksthat must be executed in practice. Tasks without select marks are heldin the apparatus as tasks but are not executed in practice.

[0405] Upon clicking a New button 3513, a WWW task detailed sub-window3520 shown in FIG. 54 is displayed to allow input of a new task. The WWWtask detailed sub-window 3520 will be described later.

[0406] When the user clicks an Edit button 3514 while one task isselected from the WWW task list, the WWW task detailed sub-window 3520(FIG. 54)-that includes the selected task information is displayed, andthe user can edit settings.

[0407] When the user clicks a Delete button 3515 while one task isselected from the WWW task list, the selected task is deleted.

[0408] [WWW Task Detailed Sub-window]

[0409]FIG. 54 shows the WWW task detailed sub-window 3520 displayed onthe LCD display 3001 of the console 3000 shown in FIG. 3.

[0410] As shown in FIG. 54, the WWW task detailed sub-window 3520displays components 3521 to 3533 having functions common to those on theRETRIEVE main window (WWW sub-window) shown in FIG. 47, a check timedisplay area 3534, a check time setting button 3535, a PRINT WHENCHANGED check button 3536, a transfer check button 3537, an OK button3539, and a cancel button 3538. Note that a description of thecomponents common to those on the RETRIEVE main window (WWW sub-window)will be omitted.

[0411] The check time display area 3534 has no entry when the WWW taskdetailed sub-window is displayed upon clicking the New button, anddisplays a set task execution time when the sub-window is displayed uponclicking the Edit button. Immediately after settings are made on a checktime sub-window shown in FIGS. 55 to 57 (to be described later), the settask execution time is displayed.

[0412] Upon clicking the check time setting button 3535, the check timesub-window shown in FIGS. 55 to 57 (to be described below) is displayed,and the user can set the task execution timing.

[0413] [Check Time Sub-window]

[0414] FIGS. 55 to 57 show check time sub-windows displayed on the LCDdisplay 3001 of the console 3000 shown in FIG. 3.

[0415] As shown in FIGS. 55 to 57, check time sub-windows 3550, 3560,and 3570 display schedule mode setting buttons (Once button 3551, Weeklybutton 3552, and Monthly button 3553), a time input area 3554, an OKbutton 3558, and a cancel button 3557. In addition, when the Once button3551 of the schedule mode setting buttons is selected, a month inputarea 3555 and date input area 3556 are displayed, as shown in the checktime sub-window (Once) 3550 in FIG. 55. Upon selection of the Weeklybutton 3552, day-of-the-week setting check buttons 3561 are displayed,as shown in the check time sub-window (Weekly) 3560 in FIG. 56. Uponselection of the Monthly button 3553, a date input area 3571 isdisplayed, as shown in the check time sub-window (Monthly) 3570 in FIG.57.

[0416] Upon clicking each input area, the ten-key pad 3050 shown in FIG.34 is displayed to allow input of numerical values. The day-of-the-weeksetting check buttons allow selection of a plurality of days of theweek.

[0417] [Management Window]

[0418]FIG. 58 shows a Management window displayed on the LCD display3001 of the console 3000 shown in FIG. 3.

[0419] Referring to FIG. 58, reference numeral 3600 denotes a Managementwindow which is displayed upon clicking the corresponding main tab (MGMT3015) shown in FIG. 14. Note that a detailed description of this windowwill be omitted.

[0420] [Configuration Window]

[0421]FIG. 59 shows a Configuration window displayed on the LCD display3001 of the console 3000 shown in FIG. 3.

[0422] Referring to FIG. 59, reference numeral 3700 denotes aConfiguration window which is displayed upon clicking the correspondingmain tab (CONFIG 3016) shown in FIG. 14. Note that a detaileddescription of this window will be omitted.

[0423] [Error Window]

[0424]FIG. 60 shows an error window displayed on the LCD display 3001 ofthe console 3000 shown in FIG. 3, and this window is displayed when someerror has occurred.

[0425] As shown in FIG. 60, an error window 3030 includes a messagedisplay area 3031 for displaying an error message using text, and an OKbutton 3032 for closing the error window. Note that this error windowcorresponds to an error that has occurred in response to an input on theID input window shown in FIG. 15.

[0426] [Device Information Service (DIS)]

[0427] The image processing apparatus of the present invention defines adatabase which holds setting values, functions of devices (scanner,printer, and the like) status, charge information, and the like for jobsin data format, and an interface with that database as DeviceInformation Service (to be abbreviated as DIS hereinafter) in thecontroller unit.

[0428]FIG. 61 shows exchanges among the DIS, a job manager, and documentmanagers such as scan manager, print manager, and the like in the imageprocessing apparatus to which the present invention can be applied.

[0429] Referring to FIG. 61, reference numeral 7102 denotes a DIS; 7101,a job manager (JobManager); 7103, a scan manager (ScanManager) as adocument manager for scan; and 7104, a print manager (PrintManager) as adocument manager for print.

[0430] Basically, dynamic information such as a start command or thelike of a job is directly instructed from the job manager 101 to therespective document managers (scan manager 7103 and print manager 7104),and static information such as a device function, job contents, or thelike is obtained by referring to the DIS 7102. Static information,dynamic information, and events from each document manager are sent tothe job manager 7101 via the DIS 7102.

[0431] When each document manager sets or retrieves data in or from thedatabase of the DIS 7102, since the internal data format of the DIS 7102complies with the Control API, a mutual conversion process between thedata format complying with the Control API and a data format that eachdocument manager can interpret is done.

[0432] For example, when each document manager sets status data, dataunique to a device is interpreted, and is converted into correspondingdata defined by the Control API, and the converted data is written inthe database of the DIS 7102.

[0433] When the job manager 7101 sets or retrieves data in or from thedatabase of the DIS 7102, no data conversion takes place between the jobmanager 7101 and DIS 7102.

[0434] The DIS 7102 updates event data on the basis of various kinds ofevent information sent from the document managers.

[0435]FIG. 62 shows various databases (to be abbreviated as DBshereinafter) held in the DIS 7102 shown in FIG. 61, and the respectiveDBs will be explained below. Note that the round-corner rectangles inFIG. 62 represent the individual DBs.

[0436] In FIG. 62, reference numeral 7201 denotes a supervisor DB(SupervisorDB), which holds status and user information for the entireapparatus, and information such as the user ID, password, and the likethat must be backed up is stored in a nonvolatile storage device such asan HD device, backup memory, or the like.

[0437] Reference numeral 7202 denotes a scan component DB (ScanComponentDB); and 7203, print component DB (Print ComponentDB). Thesecomponent DBs are held in correspondence with existing components.

[0438] For example, an apparatus comprising only a printer has a printcomponent DB alone, and an apparatus comprising a FAX holds a FAXcomponent DB. Upon initializing each component DB, the correspondingdocument manager sets functions and status of that component.

[0439] Reference numeral 7204 denotes a scan job service DB (Scan jobServiceDB); and 7205, a print job service DB (Print job ServiceDB). Uponinitializing such job service DB, the corresponding document managersets functions that the apparatus can use and the support state of thesefunctions as in the component DBs.

[0440] Job DBs (JobDB) and document DBs (DocumentDB) will be explainedbelow.

[0441] Reference numeral 7206 denotes a scan job DB (ScanJobDB); 7207, aprint job DB (PrintJobDB); 7208, a scan document DB (Scan DocumentDB);and 7209, a print document DB (Print DocumentDB).

[0442] The job and document DBs are dynamically assured and initializedby the job manager 7101 every time a job and corresponding document aregenerated, and required items are set.

[0443] Each document manager reads out items required for a process fromthe job and document DBs before the beginning of the job process, andthen starts the job.

[0444] After that, upon completion of the job, the DBs of the job andcorresponding document are released. Since the job has one or moredocuments, a plurality of document DBs are often assured for a givenjob.

[0445] Reference numeral 7210 denotes a soft counter (Soft Counter),which is a database for holding event information sent from eachdocument manager. Reference numeral 7211 denotes an event table (EventTable), which is a counter table for recording scan and print counts ofthe apparatus.

[0446] Events sent from the document managers include status transitionof a component, scan process operation end, and various errors from thescan manager 7103, and status transition of a component, print processoperation end, paper jam, paper cassette open, and the like from theprint manager 7104, and event IDs for identifying the individual eventsare determined in advance.

[0447] When each document manager has issued an event, the DIS 7102registers the issued event ID and detailed data of that event ifnecessary in the event table 7211. When each document manager informsthe DIS of release of an event, the DIS deletes the released event datafrom the event table 7211.

[0448] When the job manager 7101 performs event polling, the DIS 7102looks up the event table 7211 to send back the currently generated eventID and its detailed data to the job manager 7101, or to send back amessage indicating that no event is generated currently.

[0449] If a scan or print process operation end event is received, thecounter value of the user who scanned or printed is updated. Thissoftware counter is written back to a nonvolatile storage device such asa backed-up memory device or HD device every time its value is updated,so as to prevent the value from being lost due to inadvertent shutoff ofa power supply.

[0450] [Scan Operation]

[0451] Details of the scan operation of the image processing apparatusto which the present invention can be applied will be described belowwith reference to FIGS. 63 to 65.

[0452]FIG. 63 is a block diagram for explaining an example of thehardware arrangement that pertains to the scan operation in the imageprocessing apparatus to which the present invention can be applied.

[0453] As shown in FIG. 63, a CPU 8101, memory (Memory) 8102, imagecompression/expansion board (CODEC) 8104, and SCSI I/F circuit (SCSIController) 8103 for providing an I/F that connects a scanner (Scanner)8107 and this system are connected to a PCI bus 8105.

[0454] The SCSI I/F circuit 8103 and the scanner (or a scanner functionunit of a copying machine having a hybrid function) 8107 are connectedvia a SCSI interface cable (SCSI Cable) 8106. An IDE controller (IDEController) 8108 is connected to the PCI bus 8105, and is connected toan IDE hard disk (IDE Hard Disk) 8110 via an IDE interface cable (IDEcable) 8109.

[0455]FIG. 64 is a block diagram showing an example of the softwarearrangement that pertains to the scan operation of the image processingapparatus to which the present invention can be applied.

[0456] As shown in FIG. 64, reference numeral 8201 denotes a job manager(Job Manager) which has a function of categorizing and saving requestson the application level. Reference numeral 8202 denotes a DIS whichsaves parameters required for the scan operation from the applicationlevel. Requests from the application are saved in the memory 8102.

[0457] Reference numeral 8203 denotes a scan operation management unitfor retrieving information required for the scan operation from the jobmanager 8201 and DIS 8202.

[0458] The scan operation management unit 8203 receives table data 8301of a job number 8303 and document number 8304 (FIG. 65; to be describedlater) from the job manager 8201, and receives scan parameters 8302 fromthe DIS 8202 on the basis of the table data 8301 of the job number 8303and document number 8304. In this way, the scan operation is executedunder scan conditions requested from the application.

[0459] The scan operation management unit 8203 passes the scanparameters 8302 retrieved from the DIS 8202 to a scan sequence controlunit 8204 in the order of document numbers. Upon receiving the scanparameters 8302, the scan sequence control unit 8204 controls a SCSIcontrol unit 8207 in accordance with the contents of a scan imageattribute 8308. In this manner, the SCSI controller 8103 connected tothe CPI bus 8105 shown in FIG. 63 operates, and sends SCSI controlcommands to the scanner 8107 via the SCSI interface cable 8106, thusexecuting the scan operation.

[0460] A scanned image is transferred to the SCSI controller 8103 viathe SCSI interface cable 8106, and is stored in the memory 8103 via thePCI bus 8105. When the scan operation is complete and the image isstored in the memory 8102 via the PCI bus 8105, the scan sequencecontrol unit 8204 issues a request to a compression/expansion controlunit 8205 to compress the scanned image stored in the memory 8102 inaccordance with the contents of a scan image compression format 8309 ofthe scan parameters 8302.

[0461] Upon receiving the request, the compression/expansion controlunit 8205 compresses the image using the CODEC 8104 connected to the PCIbus 8105 in accordance with designation of the scan image compressionformat 8309 from the scan sequence control unit 8204. Thecompression/expansion control unit 8205 stores the compressed image inthe memory 8102 via the PCI bus 8105.

[0462] When the compression/expansion control unit 8205 compresses thescanned image to a format designated by the scan image compressionformat 8309 and stores the compressed image in the memory 8102, the scansequence control unit 8204 converts the compressed scanned image storedin the memory 8102 into a file in accordance with an image file type8307 of the scan parameters 8302.

[0463] The scan sequence control unit 8204 requests a file system 8206to convert the image into a file in a file format designated by theimage file type 8307 of the scan parameters 8302.

[0464] The file system 8206 converts the compressed image stored in thememory 8102 into a file in accordance with the image file type 8307 fromthe scan sequence control unit 8204, transfers the converted file to theIDE controller 8108 via the PCI bus 8105, and then transfers it to theIDE hard disk 8110 via the IDE interface cable 8109, thus converting thecompressed scanned image into a file.

[0465] When the file system 8206 stores the image file in the IDE harddisk 8110, the scan sequence control unit 8204 determines that a processfor one document on the scanner 8107 is complete, and sends back a scanend message to the scan operation management unit 8203.

[0466] At this time, when a document to be scanned still remains on thescanner 8107 and a scan request from the job manager 8201 is present,the scan sequence control unit is requested to start the scan operationusing the scan parameters 8302 stored in the DIS 8202.

[0467] When no document to be scanned remains on the scanner 8107 or noscan request from the job manager 8201 is present, it is determined thatthe scan operation is complete, and a scan end message is issued to thejob manager 8201.

[0468]FIG. 65 shows the parameter table that pertains to the scanoperation of the image processing apparatus to which the presentinvention can be applied.

[0469] Referring to FIG. 65, the table data 8301 include the job number8303 and document number 8304.

[0470] The scan parameters 8302 include a job number 8305, a documentnumber 8306, the image file type 8307, the scan image attribute 8308,and the scan image compression format 8309.

[0471] [Print Operation]

[0472] Details of the print operation of the image processing apparatusto which the present invention can be applied will be explained belowwith reference to FIGS. 66 to 69.

[0473]FIG. 66 is a block diagram showing an example of the hardwarearrangement that pertains to the print operation in the image processingapparatus to which the present invention can be applied.

[0474] In FIG. 66, a CPU 9001, memory (Memory) 9002, imagecompression/expansion board (CODEC) 9004, and engine interface board(Engine I/F) 9003 for providing an I/F that connects a printer (Printer)9007 and this system are connected to a PCI bus 9005. The engineinterface board 9003 and printer (or a printer function unit of acopying machine having a hybrid function) 9007 are connected via anengine interface cable (Engine I/F cable) 9006.

[0475] The engine interface board 9003 has an internal DPRAM. The engineinterface board 9003 sets parameters in the printer, reads out printerstatus, and exchanges print control commands via the OPRAM.

[0476] This board has a video (Video) controller, which sends image datarasterized on the PCI bus 9005 to the printer 9007 via the engineinterface cable 9006 in synchronism with VCLK (Video Clock) and HSYNCsignals supplied from the printer via the engine interface cable 9006.

[0477]FIG. 67 shows the send timings of these signals.

[0478]FIG. 67 is a timing chart showing the image data send timings ofthe image processing apparatus to which the present invention can beapplied.

[0479] As shown in FIG. 67, the VCLK signal is successively output, andthe HSYNC signal is supplied in synchronism with start of one line ofthe printer. The video controller reads out data for the set image width(WIDTH) from a memory (SOURCE) on the PCI bus 9005, and outputs thereadout data as a Video signal to the engine interface cable 9006. Afterthe video controller repeats this process in correspondence withdesignated lines (LINES), it generates an IMAGE END interrupt.

[0480] As described above, when an application program on the CPU 9001passes a print job instruction to the Control API, the Control APIpasses it as a job to the job manager 7101 on the controller level.

[0481] Furthermore, the job manager 7101 stores job settings in the DIS7102, and instructs the print manager 7104 to start the job.

[0482] Upon accepting the job, the print manager 7104 reads outinformation required to execute the job from the DIS 7102, and sets thereadout information in the printer 9007 via the engine interface board9003 and DPRAM.

[0483]FIG. 68 (to be described below) shows setting items of the engineinterface board 9003, and FIG. 69 (to be described below) shows settingitems, and control and states commands via the DPRAM.

[0484]FIG. 68 is a view for explaining the setting items of the engineinterface board 9003 shown in FIG. 66, and the items include WIDTH,LINES, and SOURCE.

[0485]FIG. 69 is a view for explaining the setting items, and controland status commands via the DPRAM, and the items and commands includethe number of sets of copies to be output (Book No), a paper feedrequest command (FEED_REQ) of an output paper sheet, an image data startmessage (IMAGE_START), an image data transfer request command(IMAGE_REQ), an image data end message (IMAGE_END), and an output paperexhaust end message (SHEET_OUT).

[0486] Note that this job is to print a set of two pages ofnon-compressed binary images having a letter size (11 inch×8.5 inch(215.9 mm×279.4 mm)), and the printer has a resolution of 600 dpi, forthe sake of simplicity.

[0487] Upon receiving this job, the print manager 7104 computes thenumber of image bytes of the width (on the side of 8.5 (inch) in thiscase) by:

[0488] WIDTH=8.5×600÷8=630 (Bytes)

[0489] The print manager then computes the number of lines by:

[0490] LINES=11×600=6600 (Lines)

[0491] The print manager sets these computed values and a SOURCE addresswhere the received image for the first page is stored in WIDTH, LINES,and SOURCE shown in FIG. 68. At this time, the engine interface board9003 is ready to output an image, but does not output any image datasince it does not receive an HSYNC signal from the printer 9007 (butreceives VCLK).

[0492] The print manager 7104 writes 1 as the number of sets of copiesat a predetermined address (Book No) of the DPRAM shown in FIG. 69.

[0493] The print manager then issues a paper feed request command(FEED_REQ) of an output paper sheet for the first page, and waits for animage data transfer request command (IMAGE_REQ) from the printer 9007.Upon receiving IMAGE_REQ from the printer 9007, the print manageroutputs an image data start message (IMAGE_START).

[0494] Upon receiving this message, the printer 9007 begins to outputHSYNC, and the engine interface board 9003 which has been waiting forHSYNC outputs an image. The printer 9007 outputs an image data endmessage (IMAGE_END) upon detecting the trailing end of an output papersheet, and outputs an output paper exhaust end message (SHEET_OUT) afterthe output paper sheet is exhausted.

[0495] Upon receiving IMAGE_END for the first page, the print manager7104 sets WIDTH, LINES, and SOURCE for the second page in the engineinterface board 9003, outputs FEED_REQ, and waits for IMAGE_REQ. Theoperation after IMAGE_REQ for the second page is received is the same asthat for the first page.

[0496] [Detailed Description of Job Stop Process]

[0497] The process of the Job Manager 1519 (FIG. 12) as a job controlunit when the user has pressed the STOP key during execution of a jobwill be explained below.

[0498] The Job Manager 1519 assures job management data required for jobcontrol for each job upon accepting a job, and holds various kinds ofjob information such as status, accept time, the number of sheets onwhich images are formed, and the like until the job is complete and isdeleted.

[0499]FIG. 70 shows the format of job management data to be managed bythe job manager (Job Manager) 1519.

[0500] As shown in FIG. 70, the Job Manager 1519 includes a jobmanagement table 201. The Job Manager 1519 assures a free entry from thejob management table 201 upon receiving a job, and holds job data in theentry.

[0501] Reference numerals 202 and 203 denote the data format of an entrycorresponding to each job, i.e., 202, data attributes; and 203, examplesof values of the attributes.

[0502] Reference numeral 211 denotes a job ID which is identificationinformation, which is automatically and uniquely assigned and appendedto each job in the apparatus, and can specify the job. Reference numeral212 denotes a job name which can be designated from the user but is notdesignated in the example shown in FIG. 70. Reference numeral 213denotes a job type, which indicates, for example, copy (Copy), print(Print), facsimile (Fax), and the like. Reference numeral 214 denotes anID of the user who input the job; and 215, a user name.

[0503] Reference numeral 216 denotes a job state which reflects thecurrent job state. Reference numeral 217 denotes a time at which the jobwas accepted by the Job Manager 1519. Reference numeral 218 denotes ajob execution time, which records the time elapsed after the process ofthe job started. Reference numeral 219 denotes job priority, which holdsthe process priority of the job. Reference numeral 220 denotes thenumber of sheets output in the job.

[0504] Reference numeral 221 denotes error information that holdsinformation which pertains to an error that has occurred during the jobprocess.

[0505] Note that an inquiry or manipulation associated with jobinformation is made together with the job ID which is used to identifythe job of interest, and the Job Manager 1519 specifies the job bysearching the job IDs of respective entries in the job management table.

[0506] In addition to the job ID, the user can input arbitrary jobinformation which is easier for him or her to identify using the fullkeyboard (FIG. 33) displayed on the LCD display 3001 of the console 3000or a host computer (not shown) which is connected via the LAN 2011 orthe like to allow a communication, and can append it to the job.

[0507] Furthermore, the process associated with the job manager (JobManager) 1519 is executed by the CPU 2001 shown in FIG. 1 on the RAM2002 on the basis of a program stored in the ROM 2003, HDD 2004, oranother storage medium (not shown).

[0508] The first control process operation of the image processingapparatus of the present invention will be described below withreference to the flow chart in FIG. 71.

[0509]FIG. 71 is a flow chart showing the first control processoperation of the image processing apparatus of the present invention,and corresponds to a process when the user has pressed the STOP key 3003shown in FIG. 3 during job execution. Note that this process is executedby the CPU 2001 shown in FIG. 1 on the RAM 2002 on the basis of aprogram stored in the ROM 2003, HDD 2004, or another storage medium (notshown). Also, S101 to S107 indicate steps.

[0510] If the user has pressed the STOP key 3003 during job execution(S101), the console 3000 detects this operation, and a messageindicating this is sent from the console that has detected depression ofthe STOP key 3003 to the Job Manager 1519 (S102).

[0511] In step S103, the Job Manager 1519 searches the Job managementtable 201 to acquire job IDs from entries of all jobs which are beingexecuted. In step S104, the Job Manager 1519 displays a list of jobs tobe stopped on the LCD display 3001 of the console 3000 like a stop jobselect window 301 shown in FIG. 72 (to be described later), and waitsuntil the user selects a job to be stopped.

[0512] The user selects a job he or she wants to stop from jobs 302,303, 304, and 305 to be stopped displayed on the stop job select window301 shown in FIG. 72, which waits for user's input, and determines theselected job by an OK key 306. Note that the contents of the job listdisplayed in this case may include arbitrary job information which isappended by the user and is easier for him or her to identify inaddition to the job ID used in the job control unit of the apparatus, asshown in FIG. 72.

[0513] The job ID selected and determined on the console 3000 is sent tothe Job Manager 1519, which specifies the designated job to be stoppedon the basis of the job ID in step S105, and instructs the DocumentManager that controls operations associated with the job to stopoperation in step S106.

[0514] In step S106, the Job Manager 1519 itself executes a stop processof that job, and sends a message indicating that the job is stopped tothe console 3000. The console 3000 makes display like a message windowshown in FIG. 73 (to be described later) to inform the user that thedesignated job is stopped. In this manner, the stop process of thedesignated job is completed, and the processing ends in step S107.

[0515] During the processes in steps S101 to S107, jobs which are beingexecuted other than the job that has undergone the stop process are notstopped, and can proceed with their processes. Hence, even when aplurality of jobs are being executed, only a job the user wants to stopis stopped.

[0516]FIG. 72 shows an example of the stop job select window 301displayed on the LCD display 3001 of the console 3000 shown in FIG. 3,and this window corresponds to an input wait window that displays a listof jobs to be stopped.

[0517] In FIG. 72, reference numeral 301 denotes a stop job selectwindow, which is an input wait window that displays a list of jobs to bestopped. Reference numerals 302 to 305 denote jobs to be stopped, fromwhich the user selects a job he or she wants to stop. The user mayselect a job either by directly touching the LCD display 3001 with hisor her finger or by clicking an up or down button. Reference numeral 306denotes an OK key. Upon clicking this key, the user determines to stop ajob selected from the jobs 302 to 305 to be stopped.

[0518]FIG. 73 shows an example of the message window which is displayedon the LCD 3001 of the console 3000 shown in FIG. 3 and informs that thejob is stopped. The window shown in FIG. 73 corresponds to a casewherein “Copy Job 003”, i.e., the job 305 to be stopped, is selected andthe job manager 1519 controls to stop that job.

[0519] As described above, according to the first embodiment, theapparatus comprises job control means which can accept and parallellyexecute a plurality of jobs, means for automatically appending, to aninput job, identification information that can specify the job in theapparatus, display means that can display job information of theapparatus, job select means which allows the user to manually select ajob, and job stop instruction means which can instruct the apparatus tostop a job during job execution.

[0520] With this arrangement, the appending means appends, to an inputjob, identification information that can specify each job, and when theinstruction means instructs to stop a job during job execution, thedisplay select means displays a list of all jobs which are beingexecuted, and the control means controls to stop only the selected job.Hence, only a specific job the user wants to stop can be stopped.

[0521] Since the user can append arbitrary identification information toa job, a list of jobs which is easier for the user to understand can bedisplayed, thus further improving operability.

[0522] [Second Embodiment]

[0523] In the first embodiment, when the user inputs a job stopinstruction, a list of all jobs which are being executed is displayed onthe console 3000, the user selects a job he or she wants to stop, andonly the selected job is stopped. Alternatively, when the user inputs ajob stop instruction, a list of all jobs may be displayed on the console3000 after all the jobs which are being executed are temporarilystopped, and only a job selected from the list may be stopped. Thatembodiment will be explained below.

[0524] [Detailed Description of Process Upon Stopping Job]

[0525] The process of the Job Manager 1519 (FIG. 12) as a job controlunit when the user has pressed the STOP key during job execution will bedescribed below.

[0526] As in the first embodiment, the Job Manager 1519 assures jobmanagement data required for job control for each job upon accepting ajob, and holds various kinds of job information such as status, accepttime, the number of sheets on which images are formed, and the likeuntil the job is complete and is deleted.

[0527] The second control process operation of the image processingapparatus of the present invention will be described below withreference to the flow chart shown in FIG. 74.

[0528]FIG. 74 is a flow chart showing the second control processoperation of the image processing apparatus of the present invention,and corresponds to a process when the user has pressed the STOP key 3003shown in FIG. 3 during job execution. Note that this process is executedby the CPU 2001 shown in FIG. 1 on the RAM 2002 on the basis of aprogram stored in the ROM 2003, HDD 2004, or another storage medium (notshown). Also, S201 to S209 indicate steps.

[0529] If the user has pressed the STOP key 3003 during job execution(S201), the console 3000 detects this operation, and a messageindicating this is sent from the console that has detected depression ofthe STOP key 3003 to the Job Manager 1519 (S202).

[0530] In step S203, the Job Manager 1519 searches the job managementtable 201 and pauses the processes of all jobs which are being executed.The Job Manager 1519 acquires the job IDs of all jobs which are beingexecuted in step S204, displays a list of jobs to be stopped on the LCDdisplay 3001 of the console 3000 like the stop job select window 301shown in FIG. 72, and waits until the user selects a job to be stoppedin step S205.

[0531] The user selects a job he or she wants to stop from the jobs 302,303, 304, and 305 to be stopped displayed on the stop job select window301 shown in FIG. 72, which waits for user's input, and determines theselected job by the OK key 306. Note that the contents of the job listdisplayed in this case may include arbitrary job information which isappended by the user and is easier for him or her to identify inaddition to the job ID used in the job control unit of the apparatus, asshown in FIG. 72.

[0532] The job ID selected and determined on the console 3000 is sent tothe Job Manager 1519, which specifies the designated job to be stoppedon the basis of the job ID in step S206, and instructs the DocumentManager (scanner manager, print manager, or the like) that controlsoperations associated with the job to stop operation in step S207. Also,the Job Manager 1519 itself executes a stop process of that job, andsends a message indicating that the job is stopped to the console 3000.The console 3000 makes display like the message window shown in FIG. 73to inform the-user that the designated job is stopped. In this manner,the stop process of the designated job is completed.

[0533] The processes of other paused jobs restart in step S208, and theprocessing ends in step S209.

[0534] During the processes in steps S201 to S209, jobs which are beingexecuted other than the job that has undergone the stop process are notstopped, and can proceed with their processes. Hence, even when aplurality of jobs are being executed, only a job the user wants to stopis stopped.

[0535] As described above, according to the second embodiment, theapparatus comprises job control means which can accept and parallellyexecute a plurality of jobs, means for automatically appending, to aninput job, identification information that can specify the job in theapparatus, display means that can display job information of theapparatus, job select means which allows the user to manually select ajob, and job stop instruction means which can instruct the apparatus tostop a job during job execution.

[0536] With this arrangement, the appending means appends, to an inputjob, identification information that can specify each job, and when theinstruction means instructs to stop a job during job execution, thecontrol means pauses all jobs which are being executed, controls thedisplay-select means to display a list of all the paused jobs, stopsonly the selected job, and restarts non-selected jobs. Hence, a specificjob the user wants to stop can be stopped at the earliest possibletiming, and an unwanted process can be prevented from being executedwhile the user instructs to stop a given job.

[0537] For this reason, since a specific job the user wants to stop canbe stopped at the earliest possible timing, and other jobs canautomatically restart, the operability for the user can be improved.

[0538] Since the user can append arbitrary identification information toa job, a list of jobs which is easier for the user to understand can bedisplayed, thus further improving operability.

[0539] [Third Embodiment]

[0540] In the first and second embodiments, when the user inputs a jobstop instruction, a list of all jobs which are being executed isdisplayed on the console 3000, the user selects a job he or she wants tostop, and only the selected job is stopped. Alternatively, when the userinputs a job stop instruction, if only one job is being executed, thatjob may be stopped unconditionally. That embodiment will be explainedbelow.

[0541] [Detailed Description of Process Upon Stopping Job]

[0542] The process of the Job Manager 1519 (FIG. 12) as a job controlunit when the user has pressed the STOP key during job execution will bedescribed below.

[0543] As in the first and second embodiments, the Job Manager 1519assures job management data required for job control for each job uponaccepting a job, and holds various kinds of job information such asstatus, accept time, the number of sheets on which images are formed,and the like until the job is complete and is deleted.

[0544] The third control process operation of the image processingapparatus of the present invention will be described below withreference to the flow chart shown in FIG. 75.

[0545]FIG. 75 is a flow chart showing the third control processoperation of the image processing apparatus of the present invention,and corresponds to a process when the user has pressed the STOP key 3003shown in FIG. 3 during job execution. Note that this process is executedby the CPU 2001 shown in FIG. 1 on the RAM 2002 on the basis of aprogram stored in the ROM 2003, HDD 2004, or another storage medium (notshown). Also, S301 to S309 indicate steps.

[0546] If the user has pressed the STOP key 3003 during job execution(S301), the console 3000 detects this operation, and a messageindicating this is sent from the console that has detected depression ofthe STOP key 3003 to the Job Manager 1519 (S302).

[0547] In step S303, the Job Manager 1519 searches the Job managementtable 201 to acquire job IDs from entries of all jobs which are beingexecuted. It is checked in step S304 if a plurality of jobs to bestopped are being executed. If it is determined that only one job isbeing executed, since a job to be stopped need not be selected, the JobManager 1519 immediately executes a stop process of that job in stepS308. In this way, the stop process of the job is completed, and theprocessing ends in step S309.

[0548] On the other hand, if it is determined in step S304 that aplurality of jobs are being executed, the Job Manager 1519 displays alist of jobs to be stopped on the LCD display 3001 of the console 3000like the stop job select window 301 shown in FIG. 72, and waits untilthe user selects a job to be stopped in step S305.

[0549] The user selects a job he or she wants to stop from the jobs 302,303, 304, and 305 to be stopped displayed on the stop job select window301 shown in FIG. 72, which waits for user's input, and determines theselected job by the OK key 306. Note that the contents of the job listdisplayed in this case may include arbitrary job information which isappended by the user and is easier for him or her to identify inaddition to the job ID used in the job control unit of the apparatus, asshown in FIG. 72.

[0550] The job ID selected and determined on the console 3000 is sent tothe Job Manager 1519, which specifies the designated job to be stoppedon the basis of the job ID in step S306, and instructs the DocumentManager that controls operations associated with the job to stopoperation in step S307. Also, the Job Manager 1519 itself executes astop process of that job, and sends a message indicating that the job isstopped to the console 3000. The console 3000 makes display like themessage window shown in FIG. 73 to inform the user that the designatedjob is stopped. In this manner, the stop process of the designated jobis completed, and the processing ends in step S309.

[0551] During the processes in steps S301 to S309, jobs which are beingexecuted other than the job that has undergone the stop process are notstopped, and can proceed with their processes. Hence, even when aplurality of jobs are being executed, only a job the user wants to stopis stopped.

[0552] If only one job is being executed, the job to be stopped need notbe designated, and the job can be stopped without user's selection.

[0553] As described above, according to the third embodiment, theapparatus comprises job control means which can accept and parallellyexecute a plurality of jobs, means for automatically appending, to aninput job, identification information that can specify the job in theapparatus, display means that can display job information of theapparatus, job select means which allows the user to manually select ajob, and job stop instruction means which can instruct the apparatus tostop a job during job execution. With this arrangement, the appendingmeans appends, to an input job, identification information that canspecify each job, and when the instruction means instructs to stop a jobduring job execution, the control means stops that job if only one jobis being executed. If a plurality of jobs are being executed, thecontrol means controls the display select means to display a list of alljobs which are being executed, and controls to stop only the selectedjob. Hence, only a specific job the user wants to stop can be stopped.Especially, when only job is being executed, the job can be immediatelystopped without forcing the user to make cumbersome operation, i.e.,select that job, thus improving operability.

[0554] Furthermore, since the appending means can append arbitrary jobinformation to an input job in addition to the identificationinformation that can specify each job, the user can select only aspecific job he or she wants to stop using the name he or she easilyunderstands, and the selected job can be easily stopped.

[0555] If only one job is being executed, the job is immediately stoppedwithout making the user select that job, thus avoiding complicatedoperations.

[0556] [Fourth Embodiment]

[0557] In the fourth embodiment, the arrangement of the apparatus itselfis the same as that in the first embodiment. The processing sequenceupon pressing the stop key is different from the first embodiment. FIG.77 is a flow chart showing the processing upon pressing the stop key. Inthe fourth embodiment, since a plurality of job delete modes areprepared, one of a plurality of functions to be preferentially deletedby the stop key can be set.

[0558] Referring to FIG. 77, if the stop key has been pressed (stepS3801), the CPU 2001 reads out a job delete mode stored in the HDD 2004as a job delete mode storage means (step S3802). The CPU 2001 checks ifthe readout job delete mode is job delete mode 1 (step S3803). If YES instep S3803, the control enters the process of job delete mode 1. If NOin step S3803, the CPU 2001 checks if the readout job delete mode is jobdelete mode 2 (step S3805). If YES in step S3805, the control enters theprocess of job delete mode 2. If NO in step S3805, the control entersthe process of job delete mode 3 (step S3807). Note that the job deletemode is input in advance by the user using the ten-key pad on theconsole 3000. Alternatively, the job delete mode may be set by supplyingparameters from another information processing apparatus connected viathe network to the digital copying machine.

[0559] Details of the individual job delete modes will be describedbelow using flow charts.

[0560] <Job Delete Mode 1>

[0561] If the process of job delete mode 1 starts upon depression of thestop key, the CPU 2001 checks the presence/absence of a scan job in stepS3812 in FIG. 78. If a scan job is present, the CPU 2001 requests theController to stop a scan operation, thus stopping the scan operation.If no scan job is present, the stop process is disabled, and does notinfluence operations of other jobs, e.g., a print job or anothercommunication jobs if they are present.

[0562] A job to be identified by a job identification unit is managed bythe Job Manager 7101 shown in FIG. 61.

[0563] <Job Delete Mode 2>

[0564] If the process of job delete mode 2 starts upon depression of thestop key, the CPU 2001 checks the presence/absence of a print job instep S3822 in FIG. 79. If a print job or another communication job ispresent, a job list shown in FIG. 81 is-displayed on the LCD display3001 of the console shown in FIG. 3.

[0565] The operator can select one or more arbitrary jobs from the joblist, and the CPU 2001 requests the Controller to stop one or moreselected jobs. A job which is currently being executed is stopped, and aheld or paused job is deleted. More specifically, the process shown inFIG. 71, 74, or 75 is executed in step S3823.

[0566] On the other hand, if it is determined in step S3822 that neithera print job nor another communication job is present, the CPU 2001checks the presence/absence of a scan job in step S3824. If a scan jobis present, the CPU 2001 requests the Controller to delete that scanjob, thus stopping the scan operation.

[0567] Furthermore, if it is determined in step S3824 that no scan jobis found, the operation of the stop key is disabled.

[0568] <Job Delete Mode 3>

[0569] If the process of job delete mode 2 starts upon depression of thestop key, the CPU 2001 checks the presence/absence of jobs in step S3832in FIG. 80. If jobs are found, the job list in FIG. 81 is displayed.Note that the jobs in-this case include all jobs, i.e., a print job,scan job, and other communication jobs. More specifically, the processshown in FIG. 71, 74, or 75 is executed in step S3833.

[0570] The operation on the job list can be the same as that describedabove.

[0571] On the other hand, if it is determined in step S3832 that no jobsare found, the operation of the stop key is disabled.

[0572] In this manner, the delete mode is set in advance, and threedifferent processes:

[0573] (1) stop a scan job if it is found,

[0574] (2) display a list of print or communication jobs if they arefound, and make the user select a job to be stopped from the list; orstop a scan job if the scan job alone is found, and

[0575] (3) display a list of jobs, and make the user select a job to bedeleted, can be selectively executed in correspondence with the setdelete mode. For this reason, the stop key can be used to instructstandardized delete operation for a job or as a key for stopping a scanjob like in the first embodiment. Furthermore, a scan job can be stoppedif it is found, and if other jobs are found, a job to be deleted can beselected. In this manner, flexible key assignment can be made inaccordance with user's convenience, and the operability can be improved.

[0576] The functions shown in the flow charts in FIGS. 71, 74, 75, and77 to 80 in the first to fourth embodiments may be executed by a hostcomputer on the basis of an externally installed program. In this case,the present invention is applied to a case wherein an information groupincluding the program is supplied from a storage medium such as aCD-ROM, flash memory, FD, or the like or from an external storage mediumvia a network to an output apparatus.

[0577] The configuration of data processing programs which can be readout by the image processing apparatus according to the present inventionwill be described below with reference to a memory map shown in FIG. 76.

[0578]FIG. 76 is a view for explaining the memory map of a storagemedium that stores various data processing programs which can be readout by the image processing apparatus according to the presentinvention.

[0579] Note that the storage medium may also store information formanaging stored program groups (e.g., version information, creator, andthe like), and information depending on the OS or the like as theprogram read side, e.g., icons used to identifiably display programs,although not shown in FIG. 76.

[0580] Furthermore, data that belong to various programs are managed indirectories shown in FIG. 76. When a program or data to be installed iscompressed, a decompression program may also be stored.

[0581] As described above, the objects of the present invention are alsoachieved by supplying a storage medium, which records a program code ofa software program that can implement the functions of theabove-mentioned embodiments to the system or apparatus, and reading outand executing the program code stored in the storage medium by acomputer (or a CPU or MPU) of the system or apparatus.

[0582] In this case, the program code itself read out from the storagemedium implements novel functions of the present invention, and thestorage medium which stores the program code constitutes the presentinvention.

[0583] As the storage medium for supplying the program code, forexample, a floppy disk, hard disk, optical disk, magneto-optical disk,CD-ROM, CD-R, magnetic tape, nonvolatile memory card, ROM, EEPROM,silicon disk, and the like may be used.

[0584] The functions of the above-mentioned embodiments may beimplemented not only by executing the readout program code by thecomputer but also by some or all of actual processing operationsexecuted by an OS (operating system) running on the computer on thebasis of an instruction of the program code.

[0585] Furthermore, the functions of the above-mentioned embodiments maybe implemented by some or all of actual processing operations executedby a CPU or the like arranged in a function extension board or afunction extension unit, which is inserted in or connected to thecomputer, after the program code read out from the storage medium iswritten in a memory of the extension board or unit.

[0586] The present invention can be applied to either a systemconstituted by a plurality of devices or an apparatus consisting of asingle apparatus. Also, the present invention can be applied to a casewherein the invention is achieved by supplying a program to the systemor apparatus. In this case, when a storage medium that stores a programexpressed by software for achieving the present invention is loaded intothe system or apparatus, that system or apparatus can enjoy the effectsof the present invention.

[0587] Furthermore, when the program expressed by software for achievingthe present invention is downloaded from a database on the network via acommunication program and is loaded, the system or apparatus enjoy theeffects of the present invention.

[0588] As many apparently widely different embodiments of the presentinvention can be made without departing from the spirit and scopethereof, it is to be understood that the invention is not limited to thespecific embodiments thereof except as defined in the appended claims.

What is claimed is:
 1. An image processing apparatus which can acceptand parallelly execute a plurality of jobs, comprising: a stop key forinstructing to stop a job during job execution; a console which allows auser to select any of jobs in a list displayed on a display unit; and acontroller for, when the user instructs to stop a job by said stop key,displaying a list of all jobs which are being executed on the displayunit, and stopping a job selected from the list.
 2. The apparatusaccording to claim 1 , wherein when the user instructs to stop a job bysaid stop key, said controller pauses all jobs which are being executed,displays a list of all the paused jobs on the display unit, and restartsexecution of jobs which are not selected from the list, so as to stopthe selected job.
 3. The apparatus according to claim 1 , wherein whenthe user instructs to stop a job by said stop key, said controllerchecks the number of jobs which are being executed, stops a job if onlyone job is being executed, displays a list of all jobs which are beingexecuted on the display unit if a plurality of jobs are being executed,and stops a job selected from the list.
 4. The apparatus according toclaim 1 , further comprising appending means for appending arbitrary jobinformation to an input job in addition to the identificationinformation.
 5. An image processing apparatus which can accept andparallelly execute a plurality of jobs, comprising: a stop key forinstructing to stop a job during job execution; a discrimination unitfor discriminating a currently set stop mode when a user requests tostop a job by said stop key; and a controller for stopping a job inaccordance with the stop mode discriminated by said discriminationmeans.
 6. The apparatus according to claim 5 , wherein when the stopmode is a first mode, said controller stops an image scan job of theplurality of jobs.
 7. The apparatus according to claim 5 , furthercomprising: a console which allows the user to select any of jobs in alist displayed on a display unit, and wherein when the stop mode is asecond mode, said controller stops an image scan job if no jobs otherthan the image scan job are found, and displays existing jobs on thedisplay unit and deletes a job selected from the displayed jobs if printor communication jobs are found.
 8. The apparatus according to claim 5 ,further comprising: a console which allows the user to select any ofjobs in a list displayed on a display unit, and wherein when the stopmode is a third mode, if print or communication jobs are found, saidcontroller displays existing jobs on the display unit, and deletes a jobselected from the displayed jobs.
 9. A method of controlling an imageprocessing apparatus which can accept and parallelly execute a pluralityof jobs, comprising: the instruction step of instructing to stop a jobduring job execution; the display/select step of displaying a list ofjobs using identification information of the jobs, and allowing a userto select any of the jobs displayed in the list; and the control step ofcontrolling the display/select step to display a list of all jobs whichare being executed when the user instructs to stop a job in theinstruction step, and stopping a job selected from the list.
 10. Themethod according to claim 9 , wherein the control step includes the stepof, when the user instructs to stop a job in the instruction step,pausing all jobs which are being executed, controlling thedisplay/select step to display a list of all the paused jobs, andrestarting execution of jobs which are not selected from the list, so asto stop the selected job.
 11. The method according to claim 9 , whereinthe control step includes the step of, when the user instructs to stop ajob in the instruction step, checking if only one job is being executed,stopping a job if only one job is being executed, controlling thedisplay/select step to display a list of all jobs which are beingexecuted and stopping a job selected from the list if a plurality ofjobs are being executed.
 12. The method according to claim 9 , furthercomprising the appending step of appending arbitrary job information toan input job in addition to the identification information.
 13. A methodof controlling an image processing apparatus which can accept andparallelly execute a plurality of jobs, comprising: the instruction stepof instructing to stop a job during job execution; the discriminationstep of discriminating a currently set stop mode when a user requests tostop a job in the instruction step; and the control step of stopping ajob in accordance with the stop mode discriminated in the discriminationstep.
 14. The method according to claim 13 , wherein the control stepincludes the step of stopping an image scan job of the plurality of jobswhen the stop mode is a first mode.
 15. The method according to claim 13, further comprising: the display/select step of displaying a list ofjobs using identification information of the jobs, and allowing the userto select any of the jobs displayed in the list, and wherein the controlstep includes the step of, when the stop mode is a second mode, stoppingan image scan job if no jobs other than the image scan job are found,controlling the display/select step to display existing jobs anddeleting a job selected from the displayed jobs if print orcommunication jobs are found.
 16. The method according to claim 13 ,further comprising: the display/select step of displaying a list of jobsusing identification information of the jobs, and allowing the user toselect any of the jobs displayed in the list, and wherein the controlstep includes the step of, when the stop mode is a third mode,controlling the display/select step to display existing jobs anddeleting a job selected from the displayed jobs if print orcommunication jobs are found.
 17. A computer readable storage mediumwhich stores a computer program for making a computer control an imageprocessing apparatus which can parallelly execute a plurality of jobs,comprising: a program code of the instruction step of instructing tostop a job during job execution; a program code of the display/selectstep of displaying a list of jobs using identification information ofthe jobs, and allowing a user to select any of the jobs displayed in thelist; and a program code of the control step of controlling thedisplay/select step to display a list of all jobs which are beingexecuted when the user instructs to stop a job in the instruction step,and stopping a job selected from the list.
 18. The medium according toclaim 17 , wherein the control step includes the step of, when the userinstructs to stop a job in the instruction step, pausing all jobs whichare being executed, controlling the display/select step to display alist of all the paused jobs, and restarting execution of jobs which arenot selected from the list, so as to stop the selected job.
 19. Themedium according to claim 17 , wherein the control step includes thestep of, when the user instructs to stop a job in the instruction step,checking if only one job is being executed, stopping a job if only onejob is being executed, controlling the display/select step to display alist of all jobs which are being executed and stopping a job selectedfrom the list if a plurality of jobs are being executed.
 20. The mediumaccording to claim 17 , further comprising the appending step ofappending arbitrary job information to an input job in addition to theidentification information.
 21. A computer readable storage medium whichstores a computer program for making a computer control an imageprocessing apparatus which can parallelly execute a plurality of jobs,comprising: a program code of the instruction step of instructing tostop a job during job execution; a program code of the discriminationstep of discriminating a currently set stop mode when a user requests tostop a job in the instruction step; and a program code of the controlstep of stopping a job in accordance with the stop mode discriminated inthe discrimination step.
 22. The medium according to claim 21 , whereinthe control step includes the step of stopping an image scan job of theplurality of jobs when the stop mode is a first mode.
 23. The mediumaccording to claim 21 , further comprising: the display/select step ofdisplaying a list of jobs using identification information of the jobs,and allowing the user to select any of the jobs displayed in the list,and wherein the control step includes the step of, when the stop mode isa second mode, stopping an image scan job if no jobs other than theimage scan job are found, controlling the display/select step to displayexisting jobs if print or communication jobs are found, and deleting ajob selected from the displayed jobs.
 24. The medium according to claim21 , further comprising: the display/select step of displaying a list ofjobs using identification information of the jobs, and allowing the userto select any of the jobs displayed in the list, and wherein the controlstep includes the step of, when the stop mode is a third mode,controlling the display/select step to display existing jobs anddeleting a job selected from the displayed jobs if print orcommunication jobs are found.
 25. A computer program for making acomputer control an image processing apparatus which can parallellyexecute a plurality of jobs, comprising: a program code of theinstruction step of instructing to stop a job during job execution; aprogram code of the display/select step of displaying a list of jobsusing identification information of the jobs, and allowing a user toselect any of the jobs displayed in the list; and a program code of thecontrol step of controlling the display/select step to display a list ofall jobs which are being executed when the user instructs to stop a jobin the instruction step, and stopping a job selected from the list. 26.The program according to claim 25 , wherein the control step includesthe step of, when the user instructs to stop a job in the instructionstep, pausing all jobs which are being executed, controlling thedisplay/select step to display a list of all the paused jobs, andrestarting execution of jobs which are not selected from the list, so asto stop the selected job.
 27. The program according to claim 25 ,wherein the control step includes the step of, when the user instructsto stop a job in the instruction step, checking if only one job is beingexecuted, stopping a job if only one job is being executed, controllingthe display/select step to display a list of all jobs which are beingexecuted and stopping a job selected from the list if a plurality ofjobs are being executed.
 28. The program according to claim 25 , furthercomprising the appending step of appending arbitrary job information toan input job in addition to the identification information.
 29. Acomputer program for making a computer control an image processingapparatus which can parallelly execute a plurality of jobs, comprising:a program code of the instruction step of instructing to stop a jobduring job execution; a program code of the discrimination step ofdiscriminating a currently set stop mode when a user requests to stop ajob in the instruction step; and a program code of the control step ofstopping a job in accordance with the stop mode discriminated in thediscrimination step.
 30. The program according to claim 29 , wherein thecontrol step includes the step of stopping an image scan job of theplurality of jobs when the stop mode is a first mode.
 31. The programaccording to claim 29 , further comprising: the display/select step ofdisplaying a list of jobs using identification information of the jobs,and allowing the user to select any of the jobs displayed in the list,and wherein the control step includes the step of, when the stop mode isa second mode, stopping an image scan job if no jobs other than theimage scan job-are found, controlling the display/select step to displayexisting jobs if print or communication jobs are found, and deleting ajob selected from the displayed jobs.
 32. The program according to claim29 , further comprising: the display/select step of displaying a list ofjobs using identification information of the jobs, and allowing the userto select any of the jobs displayed in the list, and wherein the controlstep includes the step of, when the stop mode is a third mode,controlling the display/select step to display existing jobs anddeleting a job selected from the displayed jobs if print orcommunication jobs are found.